簡體   English   中英

我可以用PECL安裝memcached PHP擴展嗎?

[英]Can I install the memcached PHP extension with PECL?

我在從PECL安裝“ memcached ”PHP擴展時遇到問題,盡管我可以成功安裝“ memcache ”擴展。 (它們是單獨的PHP擴展。)

例如,這些命令可以正常工作:

$ sudo pecl install memcache
$ sudo pecl install APC
$ sudo pecl install oauth

但是,嘗試安裝memcached會導致錯誤:

$ sudo pecl install memcached
...
ld:找不到-lmemcached的庫
collect2:ld返回1退出狀態
make:*** [memcached.la]錯誤1
錯誤:'make'失敗了

我在最近的Intel Mac上使用來自Mac Ports(macports.org)的pecl,memcached和libmemcached。 libmemcached庫可以在/ opt / local中找到:

/選擇/本地/包括/ libmemcached
/opt/local/include/libmemcached/libmemcached_config.h
/opt/local/lib/libmemcached.2.0.0.dylib
/opt/local/lib/libmemcached.2.dylib
/opt/local/lib/libmemcached.a
/opt/local/lib/libmemcached.dylib
/opt/local/lib/libmemcached.la

知道我可能做錯了嗎?

Andrei Zmievski(memcached插件的開發者)按照以下說明友好地回復了我的電子郵件請求:

$ pecl download memcached
$ tar zxvf memcached-1.0.0.tgz (or whatever version downloads)
$ cd memcached-1.0.0
$ phpize
$ ./configure --with-libmemcached-dir=/opt/local
$ make
$ sudo make install

這非常有效。

這里的情況相同。 我必須做上面的,但有明確的路徑名稱(我運行我的PHP等/ / opt / local)

  • / opt / local / bin / pecl下載memcached
  • tar zxvf memcached-1.0.0.tgz
  • cd memcached-1.0.0
  • / opt / local / bin / phpize
  • ./configure --prefix = / opt / local --with-php-config = / opt / local / bin / php-config --with-libmemcached-dir = / opt / local
  • 使
  • make install

通常這種東西在os x上使用macports非常簡單,但是還沒有php5-memcached包(只有一個用於較舊的memcache(沒有“d”)包)。 哦,我還必須安裝較舊版本的libmemcached,因為最新版本沒有在os x 10.5.8上為我編譯。 OY!

正如您所見,新的memcached擴展使用libmemcached來完成繁重的工作。 如果它是Linux,我會說你可能沒有在ld.so.conf中列出/ opt / local / lib /(並運行'ldconfig')。

但是MaxOSX並沒有使用它。 然而,顯然可以從“港口”安裝。 http://lsimons.wordpress.com/2008/05/01/serious-php-part-1/

好吧,經過多次嘗試,只有這個解決方案適合我。

  1. 安裝XAMPP
  2. 安裝brew( https://github.com/Homebrew/homebrew/wiki/Installation
  3. $ brew
  4. 安裝libmemcached
  5. cd / Applications / XAMPP / xamppfiles / bin /
  6. $ sudo ./pecl install memcached

構建過程成功完成安裝'/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20121212/memcached.so'install ok:channel://pecl.php.net/memcached-2.2。 0配置選項“php_ini”未設置為php.ini位置您應該將“extension = memcached.so”添加到php.ini

VOILA !!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM