Apt-get 崩溃,原因:重定位错误:libapt-pkg.so.4.12

Apt-get 崩溃,原因:重定位错误:libapt-pkg.so.4.12

运行简单升级后,每次尝试使用时都会崩溃apt-get。任何命令都会崩溃并显示相同的错误消息:

legaliz_me:~$ sudo apt-get
apt-get: relocation error: /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12: symbol DDDDDDDDDDDDDDDDDDDDDDDDDDDDDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF_ZNSt6vectorIN3APT13Configuration10CompressorESaIS2_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS2_S4_EERKS2_, version GLIBCXX_3.4 not defined in file libstdc++.so.6 with link time reference

完整日志:http://pastebin.com/BmTE5erZ

我不记得在我的系统中添加过任何疯狂的 edger ppa 或任何特殊的东西。我运行的是 14.04 64 位。apt 对其他人来说是否坏了?

答案1

我有一些损坏的依赖项,可能阻止了 libc6 更新。我使用以下命令检查了软件包版本:

$ dpkg -l apt libc6  libapt-pkg4.12:amd64
  libapt-pkg4.12:amd64       1.0.1ubuntu2 
  libc6:amd64                2.19-0ubuntu6
  libc6:i386                 2.19-0ubuntu6

我检查了这些包的 md5,与libapt-pkg4.12:amd64另一个用户进行比较后发现它已被损坏。

$ md5sum /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12

通过手动安装libc6libapt-pkg4.12从启动板 .deb 包修复了这个问题:libapt-gp4.12 版libc6

sudo dpkg -i libc6_2.19-0ubuntu6_i386.deb libc6_2.19-0ubuntu6_amd64.deb libapt-pkg4.12_1.0.1ubuntu2_amd64.deb 

在我强制更新之后,旧的依赖项得到了更新

sudo apt-get -f upgrade

现在一切都好了。

相关内容