溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

通過PHP5.6源代碼在WINDOWS 7下進行編譯生成(最詳細(xì)步驟)

發(fā)布時間:2020-07-22 21:48:31 來源:網(wǎng)絡(luò) 閱讀:8242 作者:lailaiji 欄目:web開發(fā)

經(jīng)過幾天的彎路,終于正常編譯出PHP5.6,做個記錄方便后面翻閱。

一、原料準(zhǔn)備

1、在PHP的windows官網(wǎng)進行下載:http://windows.php.net/download。這里我選擇的是php5.6.25。

2、下載VC++ compilers。目前官網(wǎng)不同PHP版本需要不同的VC++版本編譯器:,詳情查看https://wiki.php.net/internals/windows/compiler。

官網(wǎng)上PHP5.5,5.6可以使用Express版本:Visual Studio 2012 Express for Windows Desktop


                                                下面是php官網(wǎng)編譯支持的VC版本

Product Name5.2.x5.3.x5.4.x5.5.x5.6.x7.0.x64bits (***)
Visual C++ 6 (SP6 only)YesYesNoNoNoNoNo
Visual C++ 7/7.1 (2002, 2003, 2003+sp1)Yes (**)Yes (**)NoNoNoNoNo
Visual C++ 8 (2005)Yes (**)NoNoNoNoNoNo
Visual C++ 9 (2008 SP1 only)Yes (**)YesYesYes (**)NoNoNo
Visual C++ 11 (2012)NoNoYes (**)YesYesYes (**)Yes
Visual C++ 14 (2015)NoNoNoNoNoYesYes 


3、需要下載PHP的SDK包及deps包


在網(wǎng)址:http://windows.php.net/downloads/php-sdk/可以查看到最新支持的包

目前我使用的32位,因此使用x86.


deps:http://windows.php.net/downloads/php-sdk/deps-5.6-vc11-x86.7z


sdk(有最新則選擇最新):http://windows.php.net/downloads/php-sdk/php-sdk-binary-tools-20110915.zip


二、安裝步驟

1、先將visual stdio安裝好。

2、將sdk,deps,src三個包放到指定目錄,如D:/php_compiler

3、先將sdk包解壓,生成三個目錄,分別為bin,script,share

4、從開始菜單Mircrosoft Visual Stdio 2012/Visual Studio 2012找到VS 2012 X86本機命令提示,進入到提示符

5、通過命令提示符,回到D:/php_compiler.

6、運行bin\phpsdk_setvars.bat,該bat文件為了將當(dāng)前目錄(D:/php_compiler/bin)添加到默認(rèn)路徑(系統(tǒng)path),目的使該bin目錄下的命令可以在命令提示符中使用。

7、運行bin\phpsdk_buildtree.bat php_dev,生成php_dev目錄,可以展開看到該命令預(yù)先生成一些必須的目錄結(jié)構(gòu)。如vc6,vc8,vc9。但是沒有vc11,我們直接復(fù)制vc9成為vc11,或者直接改名為vc11

8、將php-5.6-src.zip包放到vc11/x86/,并解壓出來,然后將deps.zip解壓后與vc11/x86/deps進行合并。

9、通過剛才的命令提示符,進入到vc11/x86/php-5.6-src目錄

10、通過buildconfig 及configure.bat —disable-all —enable-cli(參數(shù)配置通過configure.bat —help查看,根據(jù)自己需要來)生成Makefile文件。

11、運行nmake,生成了PHP.EXE

12、進行打包,nmake snap.生成php-5.6-devel-vc11.zip。

13、done


三、遇到的坑

1、總是提示系統(tǒng)找不到指定路徑出現(xiàn)fatal error U1077:”if”:返回代碼“0x01"

解決:通過administrator用戶進行編譯

2、nmake找不到

解決:將Microsoft visual stdio 11.0\vc\bin及Microsoft visual\commond7\IDE\這兩個目錄添加到系統(tǒng)變量(path)中 


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI