編譯問題

這章節搜集瞭很多編譯時會產生的錯誤情況。 1. 我用匿名CVS得到最新版的源代碼包, 但沒有配置腳本文件! 2. 我在配置 PHP 在 Apache下工作時出瞭問題。 它說不能找到 httpd.h, 可是我看它就在那裡! 3. 當我運行conifgure時,它說它不能找到include文件或 一些庫: GD, gdbm, 或其它的一些包! 4. 我在編譯文件 language-parser.tab.c時, 出錯,提示: yytname undeclared. 5. 當我運行 make, 起初正常但 最終失敗瞭,在連接最後的應用時,出錯說找不到一些文件。 6. 在連接 PHP 時, 出一堆錯說 undefined references。 7. 我不清楚怎樣在 Apache 1.3下編譯PHP。 8. 我按照步驟一步一步安裝瞭Apache模塊(Unix下), 可是在瀏覽器裡打開 PHP 腳本時它卻問我是否要保存。 9. 系統說使用: –activate-module=src/modules/php4/libphp4.a, 可那文件根本不存在, 我隻好改成 –activate-module=src/modules/php4/libmodphp4.a 好瞭,它不工作瞭! 該怎麼辦? 10. 我要把PHP編譯成Apache的靜態模塊,用: –activate-module=src/modules/php4/libphp4.a 可是系統說我的編譯器不是 ANSI 兼容的。 11. 我用 –with-apxs編譯PHP時, 我總是得到一些奇怪的錯誤。 12. 在 make時, 我得到很多關於microtime錯誤, 還有許多 RUSAGE_ stuff. 13. 我想升級PHP,我在哪可以看到我現在運行的PHP 的當初配置安裝時所使用的./configure 一行的內容? 14. 編譯帶GD庫的PHP時,它不是給一些奇怪的錯, 就是執行時產生 segfaults 段錯誤. 1. 我用匿名CVS得到最新版的源代碼包, 但沒有配置腳本文件! 你必須安裝 GNU autoconf 包,這樣可以從 configure.in生成配置腳本文件. 隻要運行在CVS服務器得到源代碼的頂級目錄下的 ./buildconf。 (註意, 除非你運行configure –enable-maintainer-mode 選項, 配置腳本是不會重新生成, 即使configure.in 文件已更新, 所以當你發現 configure.in 改變瞭,你也要手工做一遍. 在config或config.status 運行後應該在你的Makefile裡能看到象@VARIABLE@這樣的標號。) 2. 我在配置 PHP 在 Apache下工作時出瞭問題。 它說不能找到 httpd.h, 可是我看它就在那裡! 你要告訴 configure/setup 腳本 Apache 的頂級目錄的位置。 就是說你要標明 –with-apache=/path/to/apache , 而不是 –with-apache=/path/to/apache/src. 3. 當我運行conifgure時,它說它不能找到include文件或 一些庫: GD, gdbm, 或其它的一些包! 你可以看看 configure 腳本,那些頭文件或非標準庫的位置,要送一些特殊的標志給C預處理器。例如: CPPFLAGS=-I/path/to/include LDFLAGS=-L/path/to/library ./configure

You May Also Like