如何找到包的构建依赖项?
我想找出哪些包裹
sudo apt-get build-dep
将安装(如果我已经安装了一些依赖项,我也希望看到那些→所以运行或模拟上述是不够的)。 命令行首选。
有关依赖项的完整列表 ,包括依赖项的依赖项,您可以使用:
apt-rdepends --build-depends openoffice.org
该命令可能会提醒您先安装apt-rdepends
。
您可以使用以下命令仅显示未安装的命令:
apt-rdepends --build-depends --print-state openoffice.org | grep NotInstalled
有关所有选项,请参阅apt-rdepends --help
。
注意 :这将生成一个庞大的列表。
例如, apt-rdepends -b xterm
生成8773行输出,并花费时间进行操作。
如果您只想查看构建最顶层软件包所需的软件包,即我需要安装什么来构建nautilus,请运行:
apt-rdepends --build-depends --follow=DEPENDS nautilus
这大致相当于Carsten Thiel的答案 ( The following NEW packages will be installed
),但输出格式更好一些。 它也只显示最顶层的包,而模拟的apt-get也显示安装的包作为那些包的依赖关系。
这还显示已安装的软件包。 但它也可能显示默认安装的软件包。 不幸的是,在运行apt-get build-dep之后尝试清理系统时,这两种方法都没有多大帮助。 据我所知,除了查看/var/log/apt/history.log
中的apt日志文件外,没有一种可靠的方法可以找到安装的文件。
选项-s
(– --simulate
)将输出在不做任何事情的情况下完成的所有操作。 你根本不需要root权限。
apt-get -s build-dep
apt-cache showsrc | grep ^Build-Depends
showsrc
显示给定源包的debian / control文件。 然后我们grep for以(Build-Depends)开头的行,它包含从源代码构建所需的包列表。