Debian-Squeeze

Debian 6.0:安裝 mysqlnd_ms

  • May 4, 2012

我正在嘗試在我的新伺服器(Debian 6.0 i386)上安裝 mysqlnd_ms。

為此,我嘗試如下:

  1. 我安裝php5-5.4.0-3php5-mysqlnd通過測試 repo。
  2. 閱讀此連結後:1,我嘗試mysqlnd_ms通過 pecl 安裝,所以我安裝php5-devphp5-pear

之後我嘗試了pecl install mysqlnd_ms,我有這個:

downloading mysqlnd_ms-1.2.2.tgz ...
Starting to download mysqlnd_ms-1.2.2.tgz (337,534 bytes)
.............................done: 337,534 bytes
ERROR: bad md5sum for file /tmp/pear/temp/mysqlnd_ms/package.xml

這與此錯誤報告連結相同的問題:2。

所以我決定自己做這項工作,並遵循與 pecl 相同的過程(下載、編譯、安裝)連結:3:

  1. pecl download mysqlnd_ms
  2. 解壓源碼後,phpize
  3. ./configure
  4. make test我有一個錯誤,因為缺少ext/mysqlnd/*
  5. 我從 php-src 從連結獲取這些文件:4
  6. make test又是新問題:
error: ./php_mysqlnd_config.h: No such file or directory
  1. 我在 intraweb 上找到了 link:5 和 link:6 。所以我試試./configure --enable-mysqlnd。得到這個後:
configure: WARNING: unrecognized options: --enable-mysqlnd

我嘗試./configure -h

Optional Features:
--disable-option-checking  ignore unrecognized --enable/--with options
--disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
--enable-mysqlnd-ms           Enable mysqlnd_ms support
--enable-mysqlnd-ms-table-filter   Enable support for table filter in mysqlnd_ms      (EXPERIMENTAL - do not use!)
--enable-shared[=PKGS]  build shared libraries [default=yes]
--enable-static[=PKGS]  build static libraries [default=yes]
--enable-fast-install[=PKGS]
                 optimize for fast installation [default=yes]
--disable-libtool-lock  avoid locking (might break parallel builds)

沒有這樣的參數來配置建構。我現在卡住了。

有沒有辦法mysqlnd_ms在 Debian 上安裝PHP5-5.4.0-3?還是使用以前版本的 PHP ?如果是以前版本的 PHP,我怎樣才能得到這個版本和所有連結的組件?

感謝您的幫助。

這裡的所有連結(由於伺服器故障垃圾郵件預防限制):gist

我有同樣的問題 - 原來這裡有兩個問題……

  1. 文件 /tmp/pear/temp/mysqlnd_ms/package.xml 的錯誤 md5sum

錯誤:文件 /tmp/pear/temp/mysqlnd_ms/package.xml 的錯誤 md5sum

正如所描述的那樣,在 pecl 包中有一個 package.xml 列出了 tar 中所有文件的 md5 值。我通過下載 pecl 包並用正確的值替換 package.xml md5 解決了這個問題(在文件本身上使用 md5sum package.xml)。腳步:

sudo pecl download mysqlnd_ms

然後解壓縮 tar,在 package.xml 上執行以下命令(它位於 zip 文件的根目錄中,而不是包含其他所有內容的文件夾)

md5sum package.xml

並更新 package.xml 的內容(對我來說是第 458 行),以便它讀取正確的 md5,對我來說是:

<file md5sum="f0051920d77ae99ba5a3fe6c3bcaa402" name="package.xml" role="src" />

再次重新 tar 包,你會看到執行安裝讓你更進一步..

sudo pecl install mysqlnd_ms-1.3.2.tar

但並非一路走來,引導我進入你和我都面臨的下一個問題……

2.錯誤:./php_mysqlnd_config.h: No such file or directory

我使用的是預設 apt-get 儲存庫中的標準 Ubuntu 12.04 PHP 5.3,它不附帶開箱即用的 mysql 本機驅動程序支持,請參閱http://php.net/manual/en/mysqli.installation.php .

所以我刪除了目前的 PHP 安裝,下載了 PHP 源並編譯/安裝了所有重要的配置標誌 –enable-pdo –with-mysql=mysqlnd –with-pdo-mysql=mysqlnd

我的預設安裝缺少很多依賴項來獲得我想要的一切,其中一些對你來說可能無關緊要,但這是我完整的包依賴項安裝和配置命令:

sudo apt-get install libxml2-dev libbz2-dev libcurl4-gnutls-dev libpng12-dev libjpeg62-dev libxpm-dev libfreetype6-dev libt1-dev libmcrypt-dev libmhash-dev libxslt1-dev

./configure --enable-fpm --enable-soap --enable-calendar --enable-ftp --enable-libxml --enable-mbstring --enable-sockets --enable-zend-multibyte --enable-zip --with-zlib --with-mcrypt --enable-pdo --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-gd

make test

make install

現在執行安裝對我來說很好:

sudo pecl install mysqlnd_ms-1.3.2.tar

希望這對某人有幫助!

引用自:https://serverfault.com/questions/374293