解決Ubuntu在安裝某個軟件時依賴包的版本過高問題


在安裝mysql時:

  1. sudo apt-get install mysql-server
 
  2. apt-get isntall mysql-client
 

  3.  sudo apt-get install libmysqlclient-dev

第三步時:某個依賴包安裝不上

出現:

zlib1g-dev : Depends: zlib1g (= 1:1.2.8.dfsg-2ubuntu4) but 1:1.2.8.dfsg-2ubuntu4.1 is to be installed
E: Unable to correct problems, you have held broken packages.

這個問題查詢了好久,最終在這篇博客中找到了解決方法  https://blog.csdn.net/makenothing/article/details/23686141

具體做法是 安裝 sudo apt-get install aptitude

解釋一下 aptitude 這個詞幾乎就等價與apt-get,只不過與 apt-get 不同的是,aptitude在處理依賴問題上更佳一些。舉例來說,aptitude在刪除一個包時,會同時刪除本身所依賴的包。這樣,系統中不會殘留無用的包,整個系統更為干凈。並且如果遇到上述情況:

使用 sudo aptitude install 軟件名,安裝過程中出現上述問題,會給出解決方案,我就是選擇了將某個高版本的依賴包降到低版本后,完成安裝的。

 

附錄:

 apt-cache search package 搜索包
  apt-cache show package 獲取包的相關信息,如說明、大小、版本等
  sudo apt-get install package 安裝包
  sudo apt-get install package - - reinstall 重新安裝包
  sudo apt-get -f install 修復安裝"-f = ——fix-missing"
  sudo apt-get remove package 刪除包
  sudo apt-get remove package - - purge 刪除包,包括刪除配置文件等
  sudo apt-get update 更新源
  sudo apt-get upgrade 更新已安裝的包
  sudo apt-get dist-upgrade 升級系統
  sudo apt-get dselect-upgrade 使用 dselect 升級
  apt-cache depends package 了解使用依賴
  apt-cache rdepends package 是查看該包被哪些包依賴
  sudo apt-get build-dep package 安裝相關的編譯環境
  apt-get source package 下載該包的源代碼
  sudo apt-get clean && sudo apt-get autoclean 清理無用的包
  sudo apt-get check 檢查是否有損壞的依賴
附錄來源:
原文:https://blog.csdn.net/makenothing/article/details/23686141
--------------------- 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM