This is a translated article, the original text can be found at: https://wiki.php.net/internals/windows/stepbystepbuild
By the way, wiki.php.net has a lot of exciting content. Students who want to learn more about php should not miss it:)
Compiling php on the windows platform requires three preparations:
1. A suitable compilation environment, including installing a compiler, the correct SDK and the corresponding binary tools
2. The third library and header files needed to compile PHP
3, PHP source code
This is the most difficult part of compiling PHP on Windows platform, because setting up such a compilation environment requires a lot of disk space, which may be several G
Requirements:
Note:
The latest php5.5 can be compiled with VC++9 or VC++11, but 5.5 has not been officially released yet.
If you are using VC6, you need to install Windows Server Feb.2003 SDK. If you are using VC9, you need to install SDK6.1
1, install vs2008
2, install windows sdk 6.1
3. Get the source code of php 5.3, you can get the snapshot from here (don’t unzip it first)
4, create the folder c:php-sdk
5. Unzip binary-tools.zip to the c:php-sdk folder. binary-tools.zip is available here (http://windows.php.net/downloads/php-sdk/). After decompression, C:php-sdk should contain subdirectories such as bin, script, share, etc.
6. Open windows sdk 6.1 shell and directly follow the following command:
PHP 5.2, 5.3 and 5.4:
setenv /x86 /xp /release
PHP 5.5+:
setenv/x86/2008/release
7,
cdc:php-sdk
8,
binphpsdk_setvars.bat
9,
binphpsdk_buildtree.bat php53dev
10. Now unzip the snapshot downloaded in step 3 to the C:php-sdkphp53devvc9x86 folder. After decompression is completed, the directory path will look like C:php-sdkphp53devvc9x86php5.3-xyz.
11. In C:php-sdkphp53devvc9x86, there is a deps folder. Download some libraries that compilation depends on and extract them into them. These libraries are available fromhttp://wiki.php.net/internals/windows/libs. Make sure that after decompression is complete, the /include and /lib directories are included in deps. (Note: The author downloaded deps-5.3-vc9-x86.7z directly from http://windows.php.net/downloads/php-sdk/ and it can be compiled successfully)
12, continue to run in windows-sdk-shell
cd C:php-sdkphp53devvc9x86php5.3-xyz
13,
buildconf
14, view compilation options
configure --help
15, enter the build instructions according to your needs:
configure --disable-all --enable-cli compiles the simplest PHP kernel and only supports cli running mode
(Note: Some extensions require lib, header files and even other programs. For details, see libs. Download the version you need and extract it to the deps folder c:php-sdkphp53vc9x86deps)
16,
nmake
17, if you need to compress the compiled php file, continue to execute:
nmake snap
18. The compiled PHP is located in the C:php-sdkphp53devvc9x86php5.3-SNAPSHOTTIMERelease_TS directory.
1, clear the last compilation result
nmake clean
2, if you need to reconfigure
buildconf --force
3. Enter the new configure configuration
configure --disable-all --enable-cli --enable-$remains
4, compile
nmake
If you only compile the most streamlined PHP (only enable-cli), after the compilation is successful, you can observe which EXT and SAPI are compiled:
In addition to standard (standard extension), this php version only contains date, ereg, pcre, reflection, and SPL extensions. Their source codes can be found in php-src/ext.