web-dev-qa-db-ja.com

Ubuntu14.04でchromiumブラウザーを構築しようとしたときに満たされていない依存関係

Ubuntu 14.04でChromiumをビルドするために必要な依存関係をインストールしようとしていますが、次のメッセージが表示されます。

The following packages have unmet dependencies:
 g++-4.8-multilib : Depends: gcc-4.8-multilib (= 4.8.2-19ubuntu1) but it is not going to be installed
                    Depends: lib32stdc++-4.8-dev (= 4.8.2-19ubuntu1) but it is not going to be installed
                    Depends: libx32stdc++-4.8-dev (= 4.8.2-19ubuntu1) but it is not going to be installed
 lib32gcc1 : Depends: gcc-4.9-base (= 4.9-20140406-0ubuntu1) but 4.9.1-0ubuntu1 is to be installed
 libbluetooth-dev : Depends: libbluetooth3 (= 4.101-0ubuntu13) but 4.101-0ubuntu13.1 is to be installed
 libcairo2-dbg : Depends: libcairo2 (= 1.13.0~20140204-0ubuntu1) but 1.13.0~20140204-0ubuntu1.1 is to be installed
 libcairo2-dev : Depends: libcairo2 (= 1.13.0~20140204-0ubuntu1) but 1.13.0~20140204-0ubuntu1.1 is to be installed
                 Depends: libcairo-gobject2 (= 1.13.0~20140204-0ubuntu1) but 1.13.0~20140204-0ubuntu1.1 is to be installed
                 Depends: libfontconfig1-dev (>= 2.2.95) but it is not going to be installed
 libfontconfig1-dbg : Depends: libfontconfig1 (= 2.11.0-0ubuntu4) but 2.11.0-0ubuntu4.1 is to be installed
 libgbm-dev : Depends: libgbm1 (= 10.1.0-4ubuntu5)
 libgl1-mesa-glx:i386 : Depends: libglapi-mesa:i386 (= 10.1.0-4ubuntu5)
                        Recommends: libgl1-mesa-dri:i386 (>= 7.2)
                        Conflicts: libgl1
 libgl1-mesa-glx-lts-utopic : Conflicts: libgl1:i386
                              Conflicts: libgl1-mesa-glx:i386
 libglib2.0-0-dbg : Depends: libglib2.0-0 (= 2.40.0-2) but 2.40.2-0ubuntu1 is to be installed
 libglib2.0-dev : Depends: libglib2.0-0 (= 2.40.0-2) but 2.40.2-0ubuntu1 is to be installed
                  Depends: libglib2.0-bin (= 2.40.0-2)
 libgtk2.0-dev : Depends: libpango1.0-dev (>= 1.20) but it is not going to be installed
 libpango1.0-0-dbg : Depends: libpango-1.0-0 (= 1.36.3-1ubuntu1) but 1.36.3-1ubuntu1.1 is to be installed or
                              libpangocairo-1.0-0 (= 1.36.3-1ubuntu1) but 1.36.3-1ubuntu1.1 is to be installed or
                              libpangoft2-1.0-0 (= 1.36.3-1ubuntu1) but 1.36.3-1ubuntu1.1 is to be installed or
                              libpangoxft-1.0-0 (= 1.36.3-1ubuntu1) but 1.36.3-1ubuntu1.1 is to be installed
 libpulse-dev : Depends: libpulse0 (= 1:4.0-0ubuntu11) but 1:4.0-0ubuntu11.1 is to be installed
                Depends: libpulse-mainloop-glib0 (= 1:4.0-0ubuntu11) but 1:4.0-0ubuntu11.1 is to be installed
 libstdc++6-4.6-dbg : Depends: libgcc1-dbg but it is not going to be installed
 libudev-dev : Depends: libudev1 (= 204-5ubuntu20) but 204-5ubuntu20.11 is to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

You will have to install the above packages yourself.

それらのパッケージを自分でインストールする必要があると書かれていますが、これを行う方法は?

Sudo apt-get install <some_package>しようとすると、次のように表示されます(gcc-4.8-multilibの例)。

gcc-4.8-multilib : Depends: lib32gcc-4.8-dev (= 4.8.2-19ubuntu1) but it is not going to be installed
                    Depends: libx32gcc-4.8-dev (= 4.8.2-19ubuntu1) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

誰かがこれらのパッケージのインストールをすべて解決するのを手伝ってもらえますか?


更新1:

Sudo apt-get install lib32gcc-4.8-devの場合:

lib32gcc-4.8-dev : Depends: lib32gcc1 (>= 1:4.8.2-19ubuntu1) but it is not going to be installed
                    Depends: libx32gcc1 (>= 1:4.8.2-19ubuntu1) but it is not going to be installed
                    Depends: lib32asan0 (>= 4.8.2-19ubuntu1) but it is not going to be installed
                    Depends: libx32asan0 (>= 4.8.2-19ubuntu1) but it is not going to be installed

apt-cache policy lib32gcc-4.8-devの場合:

lib32gcc-4.8-dev:
  Installed: (none)
  Candidate: 4.8.2-19ubuntu1
  Version table:
     4.8.2-19ubuntu1 0
        500 http://ro.archive.ubuntu.com/ubuntu/ trusty/main AMD64 Packages

更新2:

Sudo apt-get install lib32gcc1の場合:

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.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 lib32gcc1 : Depends: gcc-4.9-base (= 4.9-20140406-0ubuntu1) but 4.9.1-0ubuntu1 is to be installed
E: Unable to correct problems, you have held broken packages.

apt-cache policy lib32gcc1の場合:

 Installed: (none)
  Candidate: 1:4.9-20140406-0ubuntu1
  Version table:
     1:4.9-20140406-0ubuntu1 0
        500 http://ro.archive.ubuntu.com/ubuntu/ trusty/main AMD64 Packages
     1:4.6.3-1ubuntu5 0
        500 mirror://mirrors.ubuntu.com/mirrors.txt/ precise/main AMD64 Packages

apt-cache policy lib32gcc-4.8-dev lib32gcc1 libx32gcc1 lib32asan0 libx32asan0の場合:

lib32gcc-4.8-dev:
  Installed: (none)
  Candidate: 4.8.2-19ubuntu1
  Version table:
     4.8.2-19ubuntu1 0
        500 http://ro.archive.ubuntu.com/ubuntu/ trusty/main AMD64 Packages
lib32gcc1:
  Installed: (none)
  Candidate: 1:4.9-20140406-0ubuntu1
  Version table:
     1:4.9-20140406-0ubuntu1 0
        500 http://ro.archive.ubuntu.com/ubuntu/ trusty/main AMD64 Packages
     1:4.6.3-1ubuntu5 0
        500 mirror://mirrors.ubuntu.com/mirrors.txt/ precise/main AMD64 Packages
libx32gcc1:
  Installed: (none)
  Candidate: 1:4.9-20140406-0ubuntu1
  Version table:
     1:4.9-20140406-0ubuntu1 0
        500 http://ro.archive.ubuntu.com/ubuntu/ trusty/main AMD64 Packages
lib32asan0:
  Installed: (none)
  Candidate: 4.8.2-19ubuntu1
  Version table:
     4.8.2-19ubuntu1 0
        500 http://ro.archive.ubuntu.com/ubuntu/ trusty/main AMD64 Packages
libx32asan0:
  Installed: (none)
  Candidate: 4.8.2-19ubuntu1
  Version table:
     4.8.2-19ubuntu1 0
        500 http://ro.archive.ubuntu.com/ubuntu/ trusty/main AMD64 Packages

更新3:

apt-cache policy gcc-4.9-baseの場合:

gcc-4.9-base:
  Installed: 4.9.1-0ubuntu1
  Candidate: 4.9.1-0ubuntu1
  Version table:
 *** 4.9.1-0ubuntu1 0
        100 /var/lib/dpkg/status
     4.9-20140406-0ubuntu1 0
        500 http://ro.archive.ubuntu.com/ubuntu/ trusty/main AMD64 Packages

Sudo apt-get purge gcc-4.9-baseを実行しようとすると、次のようになります。

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.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libgcc1 : Depends: gcc-4.9-base (= 4.9.1-0ubuntu1) but it is not going to be installed
 libudev1 : Depends: libcgmanager0 but it is not going to be installed
            Depends: libnih-dbus1 (>= 1.0.0) but it is not going to be installed
            Depends: libnih1 (>= 1.0.0) but it is not going to be installed
 libxcb1 : Depends: libxau6 but it is not going to be installed
           Depends: libxdmcp6 but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
1
Cajuu'

ターミナルを開き、次のように入力します

Sudo apt-get autoclean
Sudo apt-get autoremove
Sudo apt-get update
Sudo apt-get dist-upgrade

Sudo apt-get autocleanは、/var/cache/apt/archives内の取得したパッケージファイルのローカルリポジトリをクリアします。違いは、ダウンロードできなくなったパッケージファイルのみを削除し、ほとんど役に立たないことです。

Sudo apt-get autoremoveは、他のパッケージの依存関係を満たすために自動的にインストールされ、現在は不要になったパッケージを削除するために使用されます。

autocleanおよびautoremoveは、システムに影響を与える可能性のある不要なパッケージがないことを確認するために使用されます。

Sudo apt-get updateソースリストを更新し、ソースからパッケージインデックスファイルを再同期します。

Sudo apt-get dist-upgrade dist-upgradeアップグレードの機能を実行することに加えて、パッケージの依存関係の変更もインテリジェントに処理します

1
Maythux

gccパッケージの少なくとも一部は手動でインストールされ、Ubuntu14.04よりも新しいバージョンに対応しています。 g++-multilibとその依存関係をインストールするには、それらのパッケージをアーカイブ内のバージョンにダウングレードする必要があります。

実行することから始めます

Sudo apt-get install gcc-4.9-base=4.9-20140406-0ubuntu1

そこから上に向かって作業します...これにより、ダウングレードする必要のある他のパッケージを示す一連のエラーが発生するはずです。

パッケージをダウングレードするには、各パッケージでapt-cache policyを実行して、アーカイブにあるバージョン(trusty URLのバージョン)を判別し、それをSudo apt-get installに追加する必要があります。上記の行;だからあなたは

Sudo apt-get install gcc-4.9-base=4.9-20140406-0ubuntu1 package1=version1 package2=version2 ...

または、gccと関連するすべてのパッケージを削除して、再インストールすることもできます。

どうやら手動でインストールされたバージョンのライブラリが他にもあるので、アーカイブと一致するようにシステムを復元するにはかなりの作業が必要になる場合があります。

1
Stephen Kitt

私の解決策:ubuntuのソフトウェアとアップデートで、「アップデート」パネルを見つけ、「重要なセキュリティアップデート」と「推奨アップデート」を選択すると、うまく機能します。

enter image description here

0
user183790