web-dev-qa-db-ja.com

私のaptはブーストのインストールを台無しにしました

Ubuntuについて

#> Sudo apt-get install libboost-all-dev

Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies.
 libboost-all-dev : Depends: libboost-dev but it is not going to be installed
                    Depends: libboost-atomic-dev but it is not going to be installed
                    Depends: libboost-chrono-dev but it is not going to be installed
                    Depends: libboost-context-dev but it is not going to be installed
                    Depends: libboost-date-time-dev but it is not going to be installed
                    Depends: libboost-exception-dev but it is not going to be installed
                    Depends: libboost-filesystem-dev but it is not going to be installed
                    Depends: libboost-graph-dev but it is not going to be installed
                    Depends: libboost-graph-parallel-dev but it is not going to be installed
                    Depends: libboost-iostreams-dev but it is not going to be installed
                    Depends: libboost-locale-dev but it is not going to be installed
                    Depends: libboost-math-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
                    Depends: libboost-program-options-dev but it is not going to be installed
                    Depends: libboost-python-dev but it is not going to be installed
                    Depends: libboost-random-dev but it is not going to be installed
                    Depends: libboost-regex-dev but it is not going to be installed
                    Depends: libboost-serialization-dev but it is not going to be installed
                    Depends: libboost-signals-dev but it is not going to be installed
                    Depends: libboost-system-dev but it is not going to be installed
                    Depends: libboost-test-dev but it is not going to be installed
                    Depends: libboost-thread-dev but it is not going to be installed
                    Depends: libboost-timer-dev but it is not going to be installed
                    Depends: libboost-wave-dev but it is not going to be installed
 libboost-chrono1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-date-time1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-exception1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-filesystem1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-graph-parallel1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-graph1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-iostreams1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-locale1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-log1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-math1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-mpi1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-program-options1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-python1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-random1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-regex1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-serialization1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-signals1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-system1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-test1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-thread1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-timer1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost-wave1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not going to be installed
 libboost1.54-all-dev : Depends: libboost1.54-dev but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

その最後の行:パッケージなしで 'apt-get -f install'を試してください(または解決策を指定してください)

はい。

#> Sudo apt-get -f install

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
  libboost-atomic1.53.0 libboost-chrono1.53.0 libboost-context1.53.0 libboost-graph-parallel1.53.0 libboost-graph1.53.0 libboost-iostreams1.53.0 libboost-math1.53.0 libboost-mpi1.53.0 libboost-python1.53.0 libboost-random1.53.0
  libboost-serialization1.53.0 libboost-signals1.53.0 libboost-test1.53.0 libboost-timer1.53.0 libboost-tools-dev libboost-wave1.53.0 libboost1.53-tools-dev openjdk-7-jre-lib
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
  libboost1.54-dev
Suggested packages:
  libboost1.54-doc libboost-coroutine.54-dev libboost-log.54-dev doxygen default-jdk fop
The following NEW packages will be installed
  libboost1.54-dev
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
51 not fully installed or removed.
Need to get 0 B/10.3 MB of archives.
After this operation, 101 MB of additional disk space will be used.
Do you want to continue [Y/n]? y
(Reading database ... 253168 files and directories currently installed.)
Unpacking libboost1.54-dev (from .../libboost1.54-dev_1.54.0-2ubuntu3_i386.deb) ...
dpkg: error processing /var/cache/apt/archives/libboost1.54-dev_1.54.0-2ubuntu3_i386.deb (--unpack):
 trying to overwrite '/usr/share/boostbook/xsl/docbook-layout.xsl', which is also in package libboost1.53-tools-dev 1.53.0-6+exp3ubuntu8
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
 /var/cache/apt/archives/libboost1.54-dev_1.54.0-2ubuntu3_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

この混乱から抜け出すにはどうすればよいですか?ありがとう。

11
spraff

一部のコマンドは冗長ですが、適切な対策として:

Sudo apt-get --purge remove libboost-all-dev libboost-dev libboost-doc
Sudo apt-get install -f
Sudo dpkg --configure -a
Sudo apt-get clean
Sudo apt-get update
Sudo apt-get install libboost1.54-dev

apt-get cleanに少し注意してください-/var/cache/apt/archivesで取得したパッケージのローカルリポジトリをクリアします。そこに何も保存するべきではなく、アプリケーションも保存するべきではありませんが、キャッシュがなくなることに注意してください。

9
mockinterface

このリポジトリ https://launchpad.net/~boost-latest/+archive/ubuntu/ppa libboostのすべてのバージョンが含まれていて、修正してくれました!

Sudo add-apt-repository ppa:boost-latest/ppa Sudo apt-get update

これで、必要なバージョンをインストールできます。執筆時点での最新のバージョンは1.55です。

Sudo apt-get install libboost1X.55-all-dev

2
Ruben de Vries

私はちょうど今同じ問題を抱えていました。それを解決するには

  1. Libboost1.54-dev debパッケージを buntuパッケージサイト からダウンロードします。
  2. による上書きの競合を強制する

    Sudo dpkg -i --force-overwrite libboost1.54-dev_1.54.0-2ubuntu3_AMD64.deb

  3. 次に、失敗したパッケージをインストールします

    Sudo apt-get install -f

  4. ブースト1.53を削除します

    Sudo apt-get autoremove

2
edwardtoday

私にとっては、「インストールされない」パッケージを(この順序で)手動でインストールすることができました。

Sudo apt-get install libboost1.46-dev Sudo apt-get install libboost-dev Sudo apt-get install libboost-all-dev

インストールは正常に機能しますが、パッケージがまだ機能するかどうかはテストしていません。

1
Mattia

私は最初に上記のmockinterfaceの提案を試し、頑張ったが、それでも問題が発生した。

最終的に、エラーがパッケージにあることを確認しました:libboost1.54-dev_1.54.0-2ubuntu3_AMD64.deb

だから私は走った:Sudo dpkg -i --force-overwrite /var/cache/apt/archives/libboost1.54-dev_1.54.0-2ubuntu3_AMD64.deb

次に、apt-getupdateとapt-getupgradeを実行すると、システムに再び満足しました。

Apt-getアップグレードは、さまざまなライブラリを適切に再設定するため、重要です。

1
novogeek

@mockinterfaceの目的を試してみましたが、synapticを使用しました。 boostに言及しているものを可能な限り完全に削除し、後で再インストールするために何が殺されたか(奇妙なことに、aptitude)を記録しました。

次に、@ Igor R.がコメントで提案したように、ソースからboostをビルドしました。

その時点で、/usr/local/lib/liboost*.so*はものでいっぱいでしたが、Debian/Ubuntuリポジトリよりも後のヴィンテージだと思います。

ただし、libreoffice、compiz、およびunityはlibboost-date-time1.54.0libboost-program-options1.46.1、およびlibboost-serialization1.46.に依存しているため、boostの-​​allを削除するのは大規模な作業のようです。

0
isomorphismes
Sudo aptitude install libboost1.55-all-dev

これはついに私のために働いた。

0
AidenX