用 phpize 編譯共享 PECL 擴(kuò)展庫(kù)

有時(shí)候不能用 pecl 安裝命令。這可能是因?yàn)樵诜阑饓竺?,或者是因?yàn)橄胍惭b的擴(kuò)展庫(kù)還沒有 PECL 兼容的包,例如 Git 中尚未發(fā)布的擴(kuò)展庫(kù)。如果要編譯這種擴(kuò)展庫(kù),可以用更底層的編譯工具來手工進(jìn)行編譯。

phpize 命令是用來準(zhǔn)備 PHP 擴(kuò)展庫(kù)的編譯環(huán)境的。下面例子中,擴(kuò)展庫(kù)的源程序位于 extname 目錄中:

$ cd extname
$ phpize
$ ./configure
$ make
# make install

成功的安裝將創(chuàng)建 extname.so 并放置于 PHP 的擴(kuò)展庫(kù)目錄中。需要調(diào)整 php.ini,加入 extension=extname.so 這一行之后才能使用此擴(kuò)展庫(kù)。

如果系統(tǒng)中沒有 phpize 命令并且使用了預(yù)編譯的包(例如 RPM),那要安裝 PHP 包相應(yīng)的開發(fā)版本,此版本通常包含了 phpize 命令以及相應(yīng)的用于編譯 PHP 及其擴(kuò)展庫(kù)的頭文件。

使用 phpize --help 命令可以顯示此命令用法。