以後輔助編譯包(buildtools.zip)的文件就固定在這裡,有變更會隨時修改,編譯流程請看這裡

假設編譯的工作目錄在 D:\Work,那麼請把下列檔案解開到 D:\Work 下:

編譯時請開一個空白的 CMD,不要用SDK裡面的捷徑,因為相關的環境設定已經寫在輔助編譯包內的批次檔中了。
編譯包的內容說明:
  • env_set.bat:編譯環境建立,會設定相關所需的環境參數,若你的編譯環境不同於預設,請自行修改 env_*.bat。
  • env_clean.bat:清除各項環境變數。
  • env_wsdk.bat:建立 / 清除與 Windows SDK 相關的環境變數。
  • env_psdk.bat:建立 / 清除與 Platform SDK 相關的環境變數。
  • env_vce.bat:建立 / 清除與 VC++ 2005 Express Edition 相關的環境變數。
  • env_php.bat:建立 / 清除與 PHP 編譯相關的環境變數。
  • env_add_group.bat:將某個目錄下所有子目錄中的 bin 加入 PATH、include 加入 INCLUDE、lib 加入 LIB 環境變數中。
  • env_add_dir.bat:將某個目錄下的 bin 加入 PATH、include 加入 INCLUDE、lib 加入 LIB 環境變數中。
  • bindlib.vcproj:已經轉檔好的 DNS name resolver 的 VC++ Project 檔,用新版的 VC++ 必須使用這個檔才能編譯。
  • bindlib.bat: 編譯 DNS name resolver 的批次檔,會自動建立 resolv.lib 並將檔案複製到 D:\Work\win32build\lib 中。
  • php_conf.txt:編譯 PHP 時下的參數說明,請根據你所需要的參數修改 php_conf.bat 中 cscript 那一行。
  • php_conf.bat:可用 --help 來觀看參數說明,內容同 php_conf.txt,不下參數時表示要設定編譯 PHP 時的參數用的批次檔。
  • php_make.bat:編譯 PHP 用批次檔,不下參數時會進行編譯,且編譯完會自動 Embed Manifest 編譯好的 .exe .dll 檔案,同時可選用以下參數:
    • rebuild:包含 resolv.lib 都重新編譯。
    • clean:清除編譯過程中的所有檔案。
    • install:安裝編譯好的 PHP 檔案。
    • dist:將編譯好的 PHP 檔案打包成 zip 壓縮檔。
  • convert.js:從微軟的站上看到的,據說可以把 VC++ 6 的專案檔(.dsw)轉換成 VC++ 8 的專案檔(.vcproj),不過我沒執行成功過。
  • bin 目錄:編譯 PHP 及其 PECL 所需的各項檔案,大部分可以從 GnuWin32 裡找到。
  • PECL 目錄:編譯個別的 PECL 所需的各項檔案。


PING:
TITLE: 敗部復活!編譯 PHP 成功
URL: http://blog.pixnet.net/post/HACGIS/2135618
IP: 0.0.0.0
BLOG NAME: 失落的技術 ::PIXNET BLOG::
DATE: 01/28/2007 01:25:56 AM
感謝石頭的鼓勵。前幾天可能是太累了,漏看了最後一個步驟...我的建構平台是 Windows XP SP2(x86),我寫了幾個批次檔來輔助編譯的過程。編譯所需檔案:編譯工具:.NET Framework 3.0、Windows SDK...
創作者介紹

失落的技術

HACGIS 發表在 痞客邦 PIXNET 留言(0) 人氣()