Como reparar um pacote quebrado?

3

Meu pacote libboost está quebrado. Eu não sei como consertar isso. Eu tentei:

sudo apt-get autoremove

e foi o resultado:

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.

Então eu tentei:

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

e foi o resultado:

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)

E este é o resultado do 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.

e o resultado de

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

O que devo fazer para reparar o pacote libboost?

    
por Bardia Heydari 09.11.2013 / 18:30

2 respostas

5

Acabei de encontrar o mesmo problema e o libboost1.54-dev simplesmente não iria sobrescrever o libboost1.53-dev. Meu objetivo era instalar o libboost1.54-all-dev, mas todos os outros pacotes dependiam do libboost1.54-dev e não seriam instalados.

Então eu fui para packages.ubuntu.com e procurei por libboost1.54-dev para atrevido ( link ) e baixou o arquivo.

Uma vez que o arquivo deb estava no meu computador eu tive que instalá-lo enquanto o forçava a sobrescrever com a seguinte linha:

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

depois disso, basta fazer

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

resolveu o problema.

Espero que isso ajude.

    
por wasp 22.12.2013 / 21:55
0

Remova libboost1.53-tools-dev e tente novamente.

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

Se nenhum erro aparecer aqui, continue,

sudo apt-get autoremove

caso contrário, edite sua pergunta e adicione o resultado de sudo apt-get check .

    
por Braiam 09.11.2013 / 18:43