Ubuntu

在 Ubuntu 8.04 上安裝 build-essential 和升級 g++ 時出現問題

  • February 15, 2015

我似乎在依賴方面遇到了一些麻煩,但我自己並不真正知道如何解決這個問題。這是輸出:

~:) sudo apt-get install build-essential
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.

Since you only requested a single operation it is extremely likely that
the package is simply not installable and a bug report against
that package should be filed.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 build-essential: Depends: g++ (>= 4:4.3.1) but 4:4.2.3-1ubuntu6 is to be installed
E: Broken packages
~:) sudo apt-get install g++
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.

Since you only requested a single operation it is extremely likely that
the package is simply not installable and a bug report against
that package should be filed.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 g++: Depends: cpp (>= 4:4.3.1-1ubuntu2) but 4:4.2.3-1ubuntu6 is to be installed
      Depends: gcc (>= 4:4.3.1-1ubuntu2) but 4:4.2.3-1ubuntu6 is to be installed
      Depends: g++-4.3 (>= 4.3.1-1) but it is not going to be installed
      Depends: gcc-4.3 (>= 4.3.1-1) but it is not installable
E: Broken packages
~:) 

**編輯:**我只是按照建議嘗試了 aptitude 而不是 apt-get。不行,還有其他問題:

~:) sudo aptitude install build-essential
[sudo] password for ehsanul: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Reading extended state information      
Initializing package states... Done
Building tag database... Done      
The following packages are BROKEN:
 g++ g++-4.3 libstdc++6-4.3-dev 
The following packages have been automatically kept back:
 dpkg-dev fakeroot libdns35 libisc35 linux-libc-dev patch 
The following NEW packages will be automatically installed:
 libgmp3c2 libmpfr1ldbl 
The following packages have been kept back:
 adobe-flashplugin bind9-host dnsutils gvfs gvfs-backends gvfs-fuse 
 libatm1 libbind9-30 libgvfscommon0 libisccc30 libisccfg30 liblwres30 
 libnautilus-extension1 linux-headers-2.6.24-24 
 linux-headers-2.6.24-24-generic linux-image-2.6.24-24-generic nautilus 
 nautilus-data 
The following NEW packages will be installed:
 libgmp3c2 libmpfr1ldbl 
The following packages will be upgraded:
 build-essential 
The following partially installed packages will be configured:
 timidity 
2 packages upgraded, 4 newly installed, 0 to remove and 24 not upgraded.
Need to get 775kB/6265kB of archives. After unpacking 20.3MB will be used.
The following packages have unmet dependencies:
 libstdc++6-4.3-dev: Depends: gcc-4.3-base (= 4.3.2-1ubuntu11) which is a virtual package.
                     Depends: libstdc++6 (>= 4.3.2-1ubuntu11) but 4.2.4-1ubuntu4 is installed.
 g++-4.3: Depends: gcc-4.3-base (= 4.3.2-1ubuntu11) which is a virtual package.
          Depends: gcc-4.3 (= 4.3.2-1ubuntu11) which is a virtual package.
          Depends: libc6 (>= 2.8~20080505) but 2.7-10ubuntu4 is installed.
 g++: Depends: cpp (>= 4:4.3.1-1ubuntu2) but 4:4.2.3-1ubuntu6 is installed.
      Depends: gcc (>= 4:4.3.1-1ubuntu2) but 4:4.2.3-1ubuntu6 is installed.
      Depends: gcc-4.3 (>= 4.3.1-1) which is a virtual package.
Resolving dependencies...
The following actions will resolve these dependencies:

Keep the following packages at their current version:
build-essential [11.3ubuntu1 (hardy, now)]
g++ [4:4.2.3-1ubuntu6 (hardy-updates, now)]
g++-4.3 [Not Installed]
libstdc++6-4.3-dev [Not Installed]

Score is -9852

Accept this solution? [Y/n/q/?] 

對我來說,看起來像是搞砸了儲存庫。Ubuntu 8.04 LTS 沒有GCC 4.3.x,只有 4.2.x,並且沒有被反向移植。嘗試檢查 /etc/apt/sources.list 以找到任何不耐用的儲存庫。

嘗試使用 aptitude 代替,它在處理包依賴項時會更聰明一些。

sudo aptitude update && aptitude install build-essential

更新

我做了一些Google搜尋,發現上述解決方案至少適用於遇到同樣問題的其他人。(見執行緒底部)

連結:http ://ubuntuforums.org/showthread.php?t=940314

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