首页 技术 正文
技术 2022年11月16日
0 收藏 827 点赞 2,300 浏览 5405 个字

这是一篇翻译的文章,原文参见:https://wiki.php.net/internals/windows/stepbystepbuild

顺便提一句,wiki.php.net有很多精彩的内容,想深入了解php的同学千万不要错过:)

准备工作

在windows平台上编译php,需要三样准备工作:

1,合适的编译环境,包括安装一个编译器、正确的SDK以及对应的binary tools

2,编译PHP需要用到的第三库、头文件

3,PHP源代码

构建环境

这是在windows平台上编译php最困难的部分,因为建立这样的编译环境需要大量的磁盘空间,可能会有数G

需求:

注:

最新的php5.5可以用VC++9或者VC++11编译,不过5.5尚未正式发布。

如果使用的是VC6,则需要安装Windows Server Feb.2003 SDK,如果使用的VC9则需安装SDK6.1

构建步骤

1,安装vs2008

2,安装windows sdk 6.1

3,获得php 5.3源码,可以从此处获取snapshot(先不要解压)

4,创建文件夹c:\php-sdk

5,解压binary-tools.zip 至c:\php-sdk文件夹中。binary-tools.zip可以从此处获取(http://windows.php.net/downloads/php-sdk/)。解压后C:\php-sdk中应该包含bin,script,share等子目录。

6,打开windows sdk 6.1 shell,直接下述指令:

  PHP 5.2, 5.3 and 5.4:

setenv /x86 /xp /release

  PHP 5.5+:

setenv /x86 /2008 /release

7,

cd c:\php-sdk\

8,

bin\phpsdk_setvars.bat

9,

bin\phpsdk_buildtree.bat php53dev

10,现在解压第3步中下载的snapshot至C:\php-sdk\php53dev\vc9\x86文件夹中。解压完成之后,目录路径形如C:\php-sdk\php53dev\vc9\x86\php5.3-xyz。

11,在C:\php-sdk\php53dev\vc9\x86中,有一个deps文件夹。下载编译所依赖的一些libraries,并且解压至其中。这些libraries可以从http://wiki.php.net/internals/windows/libs获得。确保解压完成之后,deps下包含/include和/lib目录。(注:笔者直接从http://windows.php.net/downloads/php-sdk/下载了deps-5.3-vc9-x86.7z可以顺利编译通过)

12,继续在windows-sdk-shell中运行

cd C:\php-sdk\php53dev\vc9\x86\php5.3-xyz

13,

buildconf

14,查看编译选项

configure –help

15,根据自己的需要输入构建指令:

configure –disable-all –enable-cli 编译最简单的PHP内核并且只支持cli运行方式

configure –disable-all –disable-zts –enable-cli –enable-debug –enable-mbstring –enable-session –enable-sockets –enable-json

(注: 一些扩展需要lib,头文件甚至其他程序,详见libs ,下载自己所需的版本并且解压至deps文件夹c:\php-sdk\php53\vc9\x86\deps)

16,

nmake

17,如果你需要压缩编译好的php文件,继续执行:

nmake snap

18,编译完的PHP位于C:\php-sdk\php53dev\vc9\x86\php5.3-SNAPSHOTTIME\Release_TS目录。

修改并重新编译

1,清除上次的编译结果

nmake clean

2,如果你需要重新config

buildconf –force

3,输入新的configure配置

configure –disable-all –enable-cli –enable-$remains

4,编译

nmake

如果只编译最精简的PHP(仅enable-cli),编译成功之后,可以观察一下编译了哪些EXT,SAPI:

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAdgAAADOCAIAAAASQ4T8AAAJTUlEQVR4nO3dTXLbOBAGUB02+1RuqKPNIhMVQwCNBn/UsfzeYoomIaAByt+wZFJ5/Pr54wFAIUEMUEwQAxQTxADFXkH83Lh2iJu6nQ501bir/Twb3UPnB7rPVW+GoJ/z/V9+fvMdrq7PretwlcOL8J56nonfo6V6/p2Vfzz+BPG2oExxq9W/bcLdE9ZtdqbbY40zi3xyoS5Z5KDOpf7jft5/Xq7q5MAvy+o63G006KueZGG31r+rpLuGbQGX/KoW+PXzR/zmeP6xfdWZ9+6t8r/w99W/+st5prBrX952ciY4Rv0EnZS8r850snquk+twt8zb78zb+ELtENMi81UVnoK9Noh3nn9093f3tC/ZHZq2nxbTHToYty34vvozc+n2Pxo3P6npnrv7fwyWJb8+Qf9Bqd3+2/bJEfNWX5tfh+Dlo5PY9tltH4w+Km/Uz/Nv0zkGpcZTnlaemcho6fLtlzwbUetpEE9HGu1pt4M5P3rz381h+sK2pO5r31x/d9BukSe3R/M6vG7xFLp7gn6Sncf9d7fbobvbz55MPV2r7dt5jcaN6wy6Si7IqJ7RSzLjZtpP6+kKKo97yJeRLzsYaOfx94LM+zkTxG3vq+dg9dwEZyWoJ+j57vpHQ+c7bKeQWbRLFjy/bttq2zYn6z8wnaVpxvO6qv1oxZb6iZdru9rJPjPr/Gxk2sdzPLNuBw6tlnSs1FENqdNx7DPi7ngXbseSq/wYvDneWf9o3DMLkly07tyXFjxu0F3qzHlZrf/C7amlxvn23WYXFjntP9lbd3v1HF17UuLJJie+WtLhU9MddLqMj0fironnH8kh75vwgU6S/V9b/1WLMJ1XfsW67ePFmXbenfLJeU37v3yIaeNj65Zpv1Rk3L778jPrnKyze2javl2iwGiFM0enL1ndXrJdkHk/V91HvB1s10/3x3bQzLijxtudu43kgl5b/7TOTP1B++l0dvMatc/UM+2/O/dk/9MhnqXvq+4EV9s/G5l+8nVmipn2HxQZjxtP+RG+8Y7Nd7p/Oru2yMe5909Q/LS2/137ZN1q3WfmeYevXv+ncl4+QDL1TsbfdOg72l/gwiBeXcSbFv2wr17/p3JePkbJqfka7x/fNQFQTBADFBPEAMUEMUAxQQxQLLiP+NnY7h9t5//muGtz4M+a+Zbn/wDqb/HAXXZBvDvazdxREMeHWttcW824+xq/rSuA//0LQXzgYlMQA5/j3wziUTQHjZOzyPcf1BxMCmBZJoiDlNy9arS/69Xm+Xe+Z0L2TBAf7ifYD3Bc/oq4uzPIuKnRa98TxFv5+gUxcL1vG8T5wpKHAA765kG81M/qBAFSkvcRb18Sh1c+qqb5OBr6OcjrYP/S1LpTWJ0dQJYn6wCKCWKAYoIYoJggBigmiAGKCWKAYoIYoFhwHzEA7/A7iNuHHQpLAvhefv38ETzhBsDt2iDe6n5eMXqeeNQegEgQxMHnFbsgbkNZFgNknQniXf4+GzfXDvARgs+IM1fEW8IX4IjgrokzQSyUAbLi+4jzO6eHAOjzZB1AMUEMUEwQAxQTxADFBDFAMUEMUEwQAxTbBrFbgAEK7K6I80EsrwGucSyIXTgDXGb7XRMHHnHOP/0MQN/u29dGGdoN3KCNLAbIioM4vvLddRVcKQMwFATxNKB3XQlfgCNOBnGyPQBDuz/WPXp52u7fHWp3SmGALE/WARQTxADFBDFAMUEMUEwQAxQTxADFBDFAMUEMUEwQAxQTxADF2u8jfh3KPN88esS5fQkAfZmvwXzMvowi3gYg8gri/EXxqL0gBjhid0W80z00ai+IAY5IfjSxNW3fXlkDMJT5Y90oi1cvpQHouPD2NR9NABxx7X3EPpcAWOaBDoBighigmCAGKCaIAYoJYoBighigmCAGKCaIAYptv2si+ZTzdk/+qWgA+rbfNfF7Tzdku4H7GIeyLAbISgbxTjd/n43bqwf4AGeCOLMTgImTH01s+WgC4Ij2+4jbwM3snB4CoK+9IgbgrXb/eGh1OQDfjwc6AIoJYoBighigmCAGKCaIAYrt7prI3zvRbfyeGzDc4AF8lODJusCrTfBYx8nCgh4EMfBRTgbxgaMZohb4RuIgHn3UsBrEcT+7/c/GJf0EiwBQKfiuiUw6dwOuG4j57fbHy/sH+IfsroiDwD0ZlG0/QSeCGPhGLvw+4tHRUWNBDPB4XPp9xKOjB4Iy/p+BIAY+yvY+4t972u1u8AUR2TYYvSTT1eH+BTHwNXiyDqCYIAYoJogBigligGKCGKCYIAYoJogBirXfNfE6tHpTMABHvB7o+P1j8pkIKQxwGUEMUGwXxDuCGOB2u8+Id0e7nxE/BDHAhbZ3TbTxOgrcNpfvqQ7gG8h/RrzlYwqAywhigGLJ+4i3L3n2vLVogE/iyTqAYoIYoJggBigmiAGKCWKAYoIYoJggBij2ziC+6qZjNy8DH2UaxNfm3VUBKoiBzxEH8eV5J4gB9g78U0nJ9ttRjvXzGHz3RXcIgK/q2Jf+dBusbo/62f44CmVBDHyO7RVxezTev7syPRDEoyvcbv4KYuAzHfhi+DPhuxTQyXEBvrbkRxN3h68gBr6v4I91v3X3b3dOw3rUPu5nWowsBj6EJ+sAigligGKCGKCYIAYoJogBigligGKCGKCYIAYoJogBigligGKCGKCYIAYoJogBigligGKCGKCYIAYoJogBigligGKCGKCYIAYoJogBigligGKCGKDYK4ifG+2e3aFjkp3s2uTHzRd51Yyu7Qr4pnZBvD3UDeWTw+WD+Hez1XHva/y2roBvJw7i0aHDloL4wMWmIAa+niCIX0YXy7v9QXQupWoQxEv9j7ZX5xXsD7oCyJoG8SiVzm+PvNq8/rvbuGrc3c4z9Qti4Lg4iIOdW23jS4J49+N7gridV6ZsQQwctxTEbSCOGn/dIM4XljwEMJG8a+JxZyDu/AtBvFq/IAaOO3YfcbvnEQbWtvE0s6bdtj2M+p/uz8wr2B8fAkjxZB1AMUEMUEwQAxQTxADFBDFAMUEMUEwQAxQTxADFBDFAMUEMUEwQAxQTxADFBDFAMUEMUEwQAxQTxADFBDFAMUEMUEwQAxQTxADFBDFAMUEMUEwQAxQTxADFBDFAMUEMUEwQAxQTxADFBDFAMUEMUEwQAxQTxADFBDFArf8A+ZuwzpEk+n0AAAAASUVORK5CYII=" alt="" />

除了standard(标准扩展),这个php版本只含有date,ereg,pcre,reflection,SPL几个扩展,它们的源码都可以在php-src/ext中找到。

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,490
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,905
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,738
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,491
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:8,129
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:5,292