[英]updated mysql to 5.6 from 5.1, but the php info still showing 5.1 client version
[英]Compiling PHP from source with MySQL version 5.6
我正在嘗試從源代碼編譯PHP以使ZTS正常工作。 我有PHP的源代碼,我嘗試安裝依賴項
apt-get build-dep php5
我也為Ubuntu 14.04LTS安裝了MySQL 5.6,我在命令后收到此錯誤:
以下軟件包具有未滿足的依賴項:mysql-server:取決於:mysql-server-5.5但不會安裝E:無法滿足php5的構建依賴性。
無論如何都可以繞過這種依賴,因為MySQL 5.6與預構建的PHP5一起工作正常但我無法開始編譯,因為依賴項缺失了? 謝謝!
雖然不是同一個問題,但這個MySQL錯誤報告暗示了一個解決方案。 請嘗試以下步驟:
卸載mysql-client-5.6和mysql-server-5.6: [sudo] apt-get remove mysql-client-5.6 mysql-server-5.6
。
啟動你的[sudo] apt-get build-dep php5
命令。 在再次升級之前,允許自動構建必要的依賴項。
重新安裝mysql-5.6。 這應該替換對mysql-5.5的所有引用。 使用命令[sudo] apt-get install mysql-client-5.6 mysql-server-5.6
。
這只是在黑暗中拍攝,但你可以嘗試首先使用所需的PHP構建安裝mysql 5.5,一旦完成,將mysql升級到5.6
為什么使用apt-get build-dep而不是install? 根據apt-get的手冊頁,“build-deps”將嘗試刪除已安裝的軟件包以解決依賴關系,這里是mysql-server-5.6。 我只是使用安裝,它的工作原理。
apt-get install php5
為了測試php是否正在使用mysql-5.6我使用apt-get安裝了PhpMyadmin並且它可以正常使用5.6,你可以做同樣的事情,並在Variables頁面中檢查名為“Version”的變量。
正如FYI apt-get build-dep與源代碼構建不同。
由於這個問題是關於從源代碼安裝PHP5:
apt-get build-dep是值得懷疑的。
依賴關系檢測應該對應於與中相同的定義
提供的php5 - debian - 包。
據我了解,您希望擁有不同的構建配置
但是,對於你的php5安裝。
所以這通常是./configure --your-configure-options的過程
並進行干凈的編譯安裝。
由configure調用生成的依賴項定義
不會被導出也不會被apt看到。
所以你必須自己解決這些問題,安裝
正確版本的軟件需要構建您的php5 - 安裝
也許開發 - 包提供構建所需的正確標頭。
PHP無法從Ubuntu 14.04開箱即用的Git checkout編譯。
歡迎來到依賴地獄。
嘗試從預編譯下載進行編譯 。
Git結賬無法編譯的原因是因為Bison的依賴性問題。 Ubuntu 14.04有Bison~3.0.0,編譯PHP需要Bison~2.0.0。
checking for bison... bison -y
checking for bison version... invalid
configure: WARNING: This bison version is not supported for regeneration of the Zend/PHP parsers (found: 3.0, min: 204, excluded: 3.0).
configure: error: bison is required to build PHP/Zend when building a GIT checkout!
這是一個使apt-get build-dep php5
成功運行的解決方法。
完全刪除MySQL(不僅僅是相關的5.6包)
完全刪除任何和所有MySQL包和任何配置文件非常重要。 您可以通過運行dpkg -l | grep mysql
來檢查安裝了哪些mysql軟件包 dpkg -l | grep mysql
, 看看'ii''rc'這樣的各種dpkg
標志是什么意思?
使用清除選項卸載軟件包: apt-get remove --purge <package name>
您可能還需要手動刪除一些文件。 閱讀apt-get remove --purge
打印的消息,它會告訴你它是否沒有刪除某些文件以及它為什么不刪除它們。 您需要手動刪除apt-get未刪除的文件。 它們很可能是/etc/mysql
目錄中的某個文件。
運行apt-get build-dep php5
這使得apt-get build-dep php5
成功運行並將安裝MySQL 5.5!
確保已安裝libmcrypt-dev
。
稍后當你嘗試編譯時,你會收到抱怨readline
或mcrypt
錯誤,例如:
configure: error: Please reinstall readline - I cannot find readline.h
所有這些錯誤都可以通過安裝libmcrypt-dev
來解決。 :)花了我太長時間來解決這個問題。
apt-get install libmcrypt-dev
完全刪除MySQL
像在第1步中那樣完成整個過程,除非這次你要刪除5.5。
安裝MySQL 5.6
確保已安裝libmcrypt-dev
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.