This article provides a detailed analysis of the PHP implementation method built on the windows platform. For more information, see php5.2)
This article provides a detailed analysis of the PHP implementation method built on the windows platform. For more information, see php5.2)
Build Steps
1. Install vs2008
2. Install windows sdk 6.1
3. Download the php 5.2 source code and obtain the Releases from it (do not unzip it first)
4. Download bindlib_w32.zip and click bindlib_w32.zip.
5. Download win32build.zip and click to download win32build.zip.
6. Download libraries such as libxml2, iconv, and zlib.
7. Create C: \ php5.2-mybuild (you can also change it to the directory you want, such as C: \ test ). Create C: \ php5.2-mybuild \ win32build, C: \ php5.2-mybuild \ bindlib_w32, C: \ php5.2-mybuild \ php-src.
8. Decompress win32build.zip to C: \ php5.2-mybuild \ win32build. After decompression, C: \ php5.2-mybuild \ win32build should contain sub-directories such as bin, include, and lib.
9. Decompress bindlib_w32.zip to C: \ php5.2-mybuild \ bindlib_w32.
Compile bindlib_w32 and put the generated resolv. lib in C: \ php5.2-mybuild \ win32build \ lib to overwrite the original one.
10. decompress the php 5.2 source code to C: \ php5.2-mybuild \ php-src.
11. Open the windows sdk 6.1 shell in the website space and enter the following command:
The Code is as follows:
Setenv/x86/xp/release
12,
The Code is as follows:
Cd C: \ php5.2-mybuild \ php-src
13,
The Code is as follows:
Buildconf
14. View compilation options
The Code is as follows:
Cscript/nologo configure. js -- help
15. Enter the build command as needed:
The Code is as follows:
Cscript/nologo configure. js -- enable-object-out-dir = "C: \ php5.2-mybuild" -- with-php-build = "C: \ php5.2-mybuild \ win32build "-- disable-all -- enable-cli
16,
The Code is as follows:
Nmake
17. After make is complete, we can see that the Release_TS folder, website space, and website space are added under the C: \ php5.2-mybuild directory. This folder is used to store files after build, you can modify -- enable-object-out-dir to configure the output directory you specified.