壊れたパッケージを修復するにはどうすればいいですか?

壊れたパッケージを修復するにはどうすればいいですか?

libboost パッケージが壊れています。修復方法がわかりません。試してみました:

sudo apt-get autoremove

そして結果は次の通りでした:

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-chrono1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-date-time1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-exception1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-filesystem1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-graph-parallel1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-graph1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-iostreams1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-locale1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-log1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-math1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-mpi1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-program-options1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-python1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-random1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-regex1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-serialization1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-signals1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-system1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-test1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-thread1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-timer1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-wave1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost1.54-all-dev : Depends: libboost1.54-dev but it is not installed
E: Unmet dependencies. Try using -f.

それから私は試しました:

sudo apt-get install -f libboost1.54-dev

そして結果は次の通りでした:

Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libboost-atomic1.53.0 libboost-context1.53.0 libboost-graph1.53.0 libboost-locale1.53.0 libboost-math1.53.0 libboost-python1.53.0
  libboost-random1.53.0 libboost-signals1.53.0 libboost-test1.53.0 libboost-timer1.53.0 libboost-wave1.53.0 libboost1.53-tools-dev
Use 'apt-get autoremove' to remove them.
Suggested packages:
  libboost1.54-doc libboost-coroutine.54-dev libboost-log.54-dev xsltproc doxygen default-jdk fop
The following NEW packages will be installed:
  libboost1.54-dev
0 upgraded, 1 newly installed, 0 to remove and 14 not upgraded.
24 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.
(Reading database ... 320270 files and directories currently installed.)
Unpacking libboost1.54-dev (from .../libboost1.54-dev_1.54.0-2ubuntu3_amd64.deb) ...
dpkg: error processing /var/cache/apt/archives/libboost1.54-dev_1.54.0-2ubuntu3_amd64.deb (--unpack):
 trying to overwrite '/usr/bin/quickbook', which is also in package libboost1.53-tools-dev 1.53.0-6+exp3ubuntu8
No apport report written because MaxReports is reached already
                                                              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_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

sudo apt-get check の結果は次のとおりです。

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-chrono1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-date-time1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-exception1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-filesystem1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-graph-parallel1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-graph1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-iostreams1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-locale1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-log1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-math1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-mpi1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-program-options1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-python1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-random1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-regex1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-serialization1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-signals1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-system1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-test1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-thread1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-timer1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost-wave1.54-dev : Depends: libboost1.54-dev (= 1.54.0-2ubuntu3) but it is not installed
 libboost1.54-all-dev : Depends: libboost1.54-dev but it is not installed
E: Unmet dependencies. Try using -f.

そしてその結果

apt-cache policy libboost1.54-all-dev libboost-wave1.54-dev libboost-python1.54-dev

は:

libboost1.54-all-dev:
  Installed: 1.54.0-2ubuntu3
  Candidate: 1.54.0-2ubuntu3
  Version table:
 *** 1.54.0-2ubuntu3 0
        500 http://ir.archive.ubuntu.com/ubuntu/ saucy/universe amd64 Packages
        100 /var/lib/dpkg/status
libboost-wave1.54-dev:
  Installed: 1.54.0-2ubuntu3
  Candidate: 1.54.0-2ubuntu3
  Version table:
 *** 1.54.0-2ubuntu3 0
        500 http://ir.archive.ubuntu.com/ubuntu/ saucy/universe amd64 Packages
        100 /var/lib/dpkg/status
libboost-python1.54-dev:
  Installed: 1.54.0-2ubuntu3
  Candidate: 1.54.0-2ubuntu3
  Version table:
 *** 1.54.0-2ubuntu3 0
        500 http://ir.archive.ubuntu.com/ubuntu/ saucy/universe amd64 Packages
        100 /var/lib/dpkg/status

libboost パッケージを修復するにはどうすればいいですか?

答え1

私も同じ問題に遭遇しましたが、libboost1.54-dev は libboost1.53-dev を上書きしませんでした。私の目標は libboost1.54-all-dev をインストールすることでしたが、他のすべてのパッケージは libboost1.54-dev に依存していたため、インストールできませんでした。

そこで、packages.ubuntu.comにアクセスし、saucy用のlibboost1.54-devを検索しました(リンク)をクリックしてファイルをダウンロードしました。

deb ファイルがコンピューターにインストールされたら、次の行で強制的に上書きしながらインストールする必要がありました。

sudo dpkg -i --force-overwrite libboost1.54-dev_1.54.0-2ubuntu3_amd64.deb

その後はただ

sudo apt-get update && sudo apt-get install -f && sudo apt-get autoremove

問題を解決しました。

お役に立てれば。

答え2

削除してlibboost1.53-tools-devもう一度お試しください。

sudo apt-get purge -f libboost1.53-tools-dev
sudo apt-get install -f

ここでエラーが表示されない場合は、続行してください。

sudo apt-get autoremove

さもないと質問を編集するの結果を加算しますsudo apt-get check

関連情報