2014-03-26 79 views
1

我想安裝升壓到我的32位Ubuntu 13.10系統。然而,當我運行:無法安裝升壓Ubuntu 13.10

sudo apt-get install libboost-all-dev 

我得到:

The following packages have unmet dependencies. 
libboost-all-dev : Depends: libboost-graph-parallel-dev but it is not going to be installed 
       Depends: libboost-mpi-dev but it is not going to be installed 
       Depends: libboost-mpi-python-dev but it is not going to be installed 
E: Unable to correct problems, you have held broken packages. 

要嘗試解決這個問題,我已經做了:

sudo apt-get remove --purge libboost-all-dev 

但它總是與

回來
Package 'libboost-all-dev' is not installed, so not removed 
The following packages were automatically installed and are no longer required: 
binutils-dev cmake cmake-data comerr-dev expect grive krb5-multidev 
libboost-filesystem-dev libboost-program-options-dev libboost-test-dev 
libcurl4-openssl-dev libexpat1-dev libgcrypt11-dev libgnutls-dev 
libgnutlsxx27 libgpg-error-dev libgssrpc4 libidn11-dev libjson-c-dev 
libjson0-dev libkadm5clnt-mit8 libkadm5srv-mit8 libkdb5-6 libkrb5-dev 
libldap2-dev libp11-kit-dev librtmp-dev libssl-dev libssl-doc libtasn1-3-dev 
libyajl-dev 

沒有什麼變化。

任何想法?

+0

您可能會發現在'é解決方案:無法糾正問題,您已持有破packages.',然後有一個重試。 – Ggicci

回答

3

起初與去除損壞的包,

$>sudo apt-get install -f 
$>sudo dpkg --configure -a 
$>sudo apt-get --fix-broken install 
$>sudo apt-get --fix-missing install 
$>sudo apt-get clean 
$>sudo apt-get autoclean 
$>sudo apt-get autoremove 

然後再升級/更新軟件包基地,

$>sudo apt-get update 
$>sudo apt-get upgrade 

然後,

$>sudo apt-get install libboost-all-dev 

如果錯誤仍然存​​在不放開,然後

$> sudo apt-get install <here goes the dependent pkg, in your case here, 'libboost-graph-parallel-dev' etc.> 

這應該可能很好。如果你仍然得到破包的一個錯誤,你必須檢查的

的/ var/lib中/ dpkg的/狀態

文件&支票是破包,然後將其刪除。

欲瞭解更多詳情,請查看here

+0

你可能想解釋你的命令是僞代碼。或者,把它們分開(爲什麼不呢?) – sehe

+0

謝謝@sehe。更新的答案。 – Aditya

+0

@Aditya我完成了所有這些步驟,但仍然無效。所以我嘗試了你提到的最後一個命令(sudo apt-get update libboost-graph-parallel-dev),但我得到:「E:更新命令不帶參數」但是一切似乎都已更新...... – DragonVet

2

沒有一個真正奏效。
工作是在安裝Symantec軟件包管理器並手動檢查並刪除損壞的軟件包。

一旦所有破損的包被刪除,安裝按預期工作。
儘管感謝您的幫助。

+0

我真的很喜歡安裝終端,以感受Linux上的安裝。儘管每個人都有不同的看法。 :) – Aditya

+0

你的意思是'synaptic',而不是賽門鐵克,對不對? – isomorphismes

2

我有同樣的問題,我找到了我的情況的答案。 只要運行以下

$ sudo apt-get remove libboost1.55-all-dev 
$ sudo apt-get autoremove