我在 64 位机器上运行 Trusty Desktop,因此如果我查询已安装的软件包,例如:
$ dpkg-query -l gcc* | grep 'ii '
ii gcc 4:4.8.2-1ubuntu6 amd64 GNU C compiler
ii gcc-4.8 4.8.4-2ubuntu1~14.04 amd64 GNU C compiler
ii gcc-4.8-base:amd64 4.8.4-2ubuntu1~14.04 amd64 GCC, the GNU Compiler Collection (base package)
ii gcc-4.8-base:i386 4.8.4-2ubuntu1~14.04 i386 GCC, the GNU Compiler Collection (base package)
ii gcc-4.8-doc 4.8.4-2ubuntu1~14.04 all Documentation for the GNU compilers (gcc, gobjc, g++)
ii gcc-4.8-multilib 4.8.4-2ubuntu1~14.04 amd64 GNU C compiler (multilib files)
ii gcc-4.9-base:amd64 4.9.1-0ubuntu1 amd64 GCC, the GNU Compiler Collection (base package)
ii gcc-4.9-base:i386 4.9.1-0ubuntu1 i386 GCC, the GNU Compiler Collection (base package)
为什么我会看到那些 i386 安装的软件包?我在这个特定安装中安装了 118 个这样的软件包...是不是因为某些 i386 软件包满足了 amd64 软件包的某些依赖关系?还是其他原因?操作系统需要它们吗?
笔记:我真的很想问一下”他们为什么在这里?“ 不是 ”我怎样才能摆脱它们?“。 这后一个问题覆盖得很好。
答案1
一个简单的命令就可以提供必要的信息。但首先你必须安装一个好用的工具:
sudo apt-get install aptitude
现在检查例如:
aptitude why gcc-4.8-base:i386