在windows平台上构建自己的PHP实现方法(仅适用于php5.2)

时间:2022-01-19 07:30:24

构建步骤
1, 安装vs2008
2, 安装windows sdk 6.1
3, 下载php 5.2源码,可以从此处获取Releases (先不要解压)
4, 下载bindlib_w32.zip,点击下载bindlib_w32.zip
5, 下载win32build.zip,点击下载win32build.zip
6, 下载libxml2,iconv,zlib等库 http://www.zlatkovic.com/pub/libxml/
7, 创建C:php5.2-mybuild (也可以改成你想要的目录,比如C: est等等)。 接着创建C:php5.2-mybuildwin32build, C:php5.2-mybuildindlib_w32, C:php5.2-mybuildphp-src 。
8, 解压 win32build.zip 到 C:php5.2-mybuildwin32build 。 解压后C:php5.2-mybuildwin32build应该包含bin,include,lib等子目录。
9, 解压 bindlib_w32.zip 到 C:php5.2-mybuildindlib_w32 。
    编译bindlib_w32,生成的resolv.lib 放到 C:php5.2-mybuildwin32buildlib 中,覆盖掉原来的。
10,解压 php 5.2源码 到 C:php5.2-mybuildphp-src
11,打开windows sdk 6.1 shell,键入下述指令:

复制代码 代码如下:


setenv /x86 /xp /release


12,

复制代码 代码如下:


cd C:php5.2-mybuildphp-src


13,

复制代码 代码如下:


buildconf


14,查看编译选项

复制代码 代码如下:


cscript /nologo configure.js --help


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

复制代码 代码如下:


cscript /nologo configure.js --enable-object-out-dir="C:php5.2-mybuild" --with-php-build="C:php5.2-mybuildwin32build" --disable-all  --enable-cli


16,

复制代码 代码如下:


nmake


17,make完之后,可以看到C:php5.2-mybuild目录下新增了Release_TS文件夹,该文件夹用于存放build之后的文件,可以通过修改--enable-object-out-dir来配置自己指定的输出目录。