Dpkg和apt-get是否安装依赖项?


15

我一直在想,有没有办法告诉我,dpkg或者apt-get当我想安装软件包时还要安装它所需的所有依赖项吗?我使用来安装了一个软件包,dpkg但它抱怨一些依赖性问题,因此我不得不一个个地手动搜索,这样做有更好的方法吗?


5
dpkg不处理依赖关系,它是一个低级的软件包管理工具。
若奥·平托

Answers:



11

apt-get或aptitude将安装软件包的所有依赖项。根据apt-get手册页

指定安装的软件包所需的所有软件包也将被检索并安装。

即使您要从源代码安装软件包,也可以使用apt-get安装其构建依赖项。为此使用apt-get build-dep。再次从apt-get手册页:

build-dep导致apt-get安装/删除软件包,以尝试满足源软件包的构建依赖性。

例如,如果要编译gcc,则需要所有构建依赖项才能成功编译gcc。所以你用sudo apt-get build-dep gcc。这将安装从源代码构建gcc所需的所有软件包。


8

如果在使用dpkg安装软件包后告诉您缺少依赖关系,则可以运行apt-get -f install以在系统上安装所有缺少的依赖关系。


3

如果您正在寻找一种工具来安装包含相关性的下载(即基于非存储库)的软件包,请查看gdebi(GTK UI)或gedebi-core(命令行工具)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.