我想知道哪些包
sudo apt-get build-dep <package>
会安装(如果我已经安装了一些依赖项,我也想看到它们 → 因此运行或模拟上述操作是不够的)。最好使用命令行。
答案1
为一个完整列表依赖项,包括依赖项的依赖项,您可以使用:
apt-rdepends --build-depends openoffice.org
该命令可能会提醒您先安装apt-rdepends
。
您可以使用以下命令仅显示未安装的命令:
apt-rdepends --build-depends --print-state openoffice.org | grep NotInstalled
查看apt-rdepends --help
所有选项。
笔记:这将生成一个大量的例如, list.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 后,系统会自动检查哪些软件包被安装了。据我所知,除了查看 apt 日志文件之外,没有其他可靠的方法可以找到已安装的软件包。/var/log/apt/history.log
。
答案2
apt-cache showsrc <pkgname> | grep ^Build-Depends
showsrc
显示给定源包的 debian/control 文件。然后我们 grep 查找以“Build-Depends”开头的行,其中包含从源代码构建所需的包列表。
答案3
选项-s
( --simulate
) 将输出所有不需要执行任何操作的操作。您甚至不需要 root 权限。
apt-get -s build-dep <package>