2012-10-20 29 views
2

我有在Ubuntu 12.04上從源代碼編譯的PHP 5.4.8。 PHP駐留在自定義目錄中。PHP無法使用已編譯的memcache.so擴展

我編譯了memcache-2.2.7,最後我得到了一個memcache.so擴展名。

我修改php.ini並補充說:

extension=/jusr/php5/ext/memcache.so 

,但是當我在CLI運行測試腳本我得到一個錯誤:

PHP Warning: PHP Startup: Unable to load dynamic library '/jusr/php5/ext/memcache.so' - /jusr/php5/ext/memcache.so: undefined symbol: executor_globals in Unknown on line 0 

有什麼不對?

+0

您應該將解決方案遷移到了自己的答案,並接受它,所以它更清晰未來遊客發生了什麼事。 –

+0

好的想法.. – nick

回答

4

我其實已經想通了。那裏最「指導」的東西不會告訴你,你需要將memcache與位於PHP安裝中的php-config文件鏈接起來。

cd /home/user/memcache-2.2.7 
phpize --clean && phpize 
./configure --with-php-config=/path/to/php/bin/php-config 
make 
make install 

這就是你如何鏈接memcache與PHP。我無法得到這個任何地方。

0

(從bugs.php.net)

你已經建立了使用錯誤的PHP頭庫。 請確保系統中的phpize和php-config附帶了您正在使用的PHP版本。

https://bugs.php.net/bug.php?id=57263

+0

我已經看到之前我在這裏發佈的鏈接。它沒有告訴我什麼 – nick