./configure --enable-curl
./configure --with-curl
1.enable和with參數指令有什麼差別?
2.如何將擴充編譯進php,而不是以.so動態擴展形式存在?
更新
3.哪些擴充是php官方支援的呢?是php源碼包ext目錄下的就是php官方支援的麼?可以編譯進php的?
4.使用什麼指令將官方支援的擴充編譯進php?
某草草2017-05-16 13:11:27
enable 是啟用 PHP 源碼包自帶,但是預設不啟用的擴展,例如 ftp 和 exif 擴展。 with 是指定擴充依賴的資源庫的位置,如果是預設位置,就可以留空。
php 的擴充分為靜態編譯和動態編譯兩種,靜態編譯就是隨著PHP的原始碼一起編譯安裝,也就是 --enable 和 --with 啟用的擴充。動態編譯就是在一個已經可以使用的 PHP 環境下,使用 phpize 指令來增加 php 擴充的方式,這個方式就是產生的 so 檔案。所以想要把擴充編譯進 php 內核,就需要跟 php 一起編譯安裝。
是的,php源碼包ext目錄下的就是官方預設支援的擴展,還有一部分就是 pecl 庫裡的擴展,pecl 的一部分擴展也是官方支持的,另一部分是第三方開發者支持的。
把擴充功能跟著php安裝,也就是 configure 指令
PHP中文网2017-05-16 13:11:27
第一個問題 enable和with都是編譯時候的一些選項,而enable更多的情況下是啟用某個擴展http://php.net/manual/en/conf...
第二個問題 php官方支援的擴充可以在原始碼編譯的時候編譯進php,而第三方的擴充則必須以so的形式引入