Ubuntu下安裝依賴的幾個解決方案

2021-08-20 04:44:40 字數 1443 閱讀 3931

在ubuntu的使用中想必大家經常遇見這句話:「e: 無法修正錯誤,因為您要求某些軟體包保持現狀,就是它們破壞了軟體包間的依賴關係」

對於這個問題,網上有很多解決方案,但是大多不靠譜.以往我一般都是手動處理(當然我們也可以使用aptitude來自動解決安裝依賴問題,詳細見下文),如果是乙個軟體的版本問題,直接安裝指定版本.比如:

在顯示liblapack3 : 依賴: libgfortran3 (>= 4.6) 但是它將不會被安裝 e: 無法修正錯誤,因為您要求某些軟體包保持現狀,就是它們破壞了軟體包間的依賴關係。的時候,部分情況可以直接使用sudo apt-get -f install libgfortran3>=4.6,來進行解決.

但是如圖中所示,這次不行,為什麼呢?因為一般而言安裝制定版本的軟體所對應的問題是軟體版本過高的的問題.但是在這裡並不是這樣,而是因為安裝這個軟體還有很多的其他依賴這裡無法提供.

這個時候就要輪到下面的這種方法了.

那就是使用aptitude來代替apt,aptitude與 apt-get 一樣,是 debian 及其衍生系統中功能極其強大的包管理工具。與 apt-get 不同的是,aptitude在處理依賴問題上更佳一些。舉例來說,aptitude在刪除乙個包時,會同時刪除本身所依賴的包。這樣,系統中不會殘留無用的包,整個系統更為乾淨。而在安裝軟體時,它不僅僅可以提供像apt那樣的普通功能,還能夠提供在安裝依賴衝突時的解決方案。

比如我在安裝r時發現安裝衝突,這個時候我們就可以使用sudo aptitude install r-base-core來解決這個問題。一開始的時候,aptitude也會想apt那樣檢測到依賴衝突,然後給出乙個解決方案。但是不同的地方在於對於解決方案你有三個選擇(y/n/q),y就是同意,n不同意,然後會繼續給出下乙個解決方案。q–>退出,放棄安裝。假如一開始它推薦給你不安裝的時候,你就可以選擇n,然後一般而言第二個解決方案將會自動降級安裝依賴的軟體(如果是一系列軟體版本過高的話),這個時候選擇同意基本都可以安裝成功。

如圖:

不過唯一美中不足的問題在於,這樣安裝之後的 軟體版本會比較低。不過好在確實可以用了。

在ubuntu中安裝r語言

ubuntu解決包的依賴問題

解決ubuntu下安裝python依賴出錯的問題

問題描述,在ubuntu 14.04的電腦上安裝python的依賴時出現了卡死然後出錯的情況。命令 sudo pip install r requirements.txt i 問題截圖 原因 是在安裝flask mongoengine 0.7.5時有安裝了其他的依賴如coverage,但是使用的源卻...

ubuntu安裝nginx依賴包

例如檢視zlib是否安裝 dpkg l grep zlib 依賴包openssl安裝,命令 sudo apt get install openssl libssl dev 解決依賴包pcre安裝,命令 sudo apt get install libpcre3 libpcre3 dev 解決依賴包z...

ubuntu安裝greenplum依賴包

ubuntu安裝greenplum的過程中有兩個比較難找的包,特地寫出來給大家分享一下 錯誤提示1 configure error header file is required for ldap 解決 sudo apt get install libldap2 dev 錯誤提示2 checking...