在使用 Ubuntu 64 位时,如何找出哪个包触发了 i386 库的安装?

在使用 Ubuntu 64 位时,如何找出哪个包触发了 i386 库的安装?

我正在运行 Precise 64 位。我最近安装的其中一个软件包需要 32 位软件包,这触发了一大堆 i386 依赖项的安装。我如何查找是哪个软件包?

更新:如何识别并删除所有非 64 位的软件包?

答案1

我将尝试确定哪个包触发了 32 位包的安装:

  • 启动突触

  • 找到已作为依赖项安装的 32 位软件包(libc6-i386是一个很好的候选)

  • 尝试卸载它。如果另一个软件包依赖于它(应该是这种情况,因为这就是首先安装该库的原因),Synaptic 会告诉您还需要卸载另一个软件包。

  • 一旦您卸载了触发安装 32 位库的软件包,您就可以运行sudo apt-get autoremove来删除作为已卸载软件包的依赖项安装的软件包。

类似地,要找到所有依赖于 32 位库的软件包,请尝试卸载,libc6-i386这应该会触发系统中所有 32 位软件包的卸载。

我确信还有一个神奇的命令行单行程序涉及 dpkg、awk 和 grep,它们可以做同样的事情:)

相关内容