Ubuntu 14.04でChromeブラウザをビルドしようとしたときに満たされていない依存関係

Ubuntu 14.04でChromeブラウザをビルドしようとしたときに満たされていない依存関係

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

端末を開き、次のように入力します。

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はソフトウェアパッケージの依存関係の変更をインテリジェントに処理することもできます。

答え2

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

走り始める

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

そしてそこから...ダウングレードする必要がある他のパッケージが何であるかを示す多くのエラーが表示されます。

パッケージをダウングレードするには、apt-cache policy各パッケージを実行してアーカイブのバージョン(つまりURLがあるバージョンtrusty)を確認し、それらをsudo apt-get install上の行に追加する必要があります。

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

あるいは、gcc関連パッケージをすべて消去して再インストールすることもできます。

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

答え3

私の解決策:Ubuntuのソフトウェアとアップデートで「アップデート」パネルを見つけて、重要なセキュリティアップデートと推奨アップデートを選択すると、正常に使用できます。

ここに画像の説明を入力してください。

関連情報