![如何在安装 Slackware 包之前检查依赖关系?](https://linux22.com/image/1344929/%E5%A6%82%E4%BD%95%E5%9C%A8%E5%AE%89%E8%A3%85%20Slackware%20%E5%8C%85%E4%B9%8B%E5%89%8D%E6%A3%80%E6%9F%A5%E4%BE%9D%E8%B5%96%E5%85%B3%E7%B3%BB%EF%BC%9F.png)
我有一个关于依赖性检查的问题。
在下载软件包之前,我需要检查是否已安装了一些依赖项。我该怎么做?我不想花时间下载已经安装的东西。
答案1
大多数 Slackware 软件包依赖于已安装的软件包(标记为必需并默认安装)或自包含。这是关于官方 Slackware 软件包,第三方软件包可能需要其他软件才能运行(但是,大多数作者在其发行说明中包括您可能需要的额外软件,甚至将其包含在软件包中)。
总之,没有办法用 pkgtool 来做到这一点,大多数时候没有必要,如果您使用第三方软件包,则应该阅读发行说明。
从源代码安装是另一回事,但在这种情况下,您可能最终也会编译依赖项,因此请阅读发行说明。
在使用 Slackware 服务器多年之后,我发现唯一的依赖地狱是在安装 Perl 软件时,直到我开始使用 CPAN shell,它会安装你想要的模块及其依赖项。
答案2
Slackware 有一个slackpkg
实用程序,对此很有用。因此,如果您知道包的名称(*),即依赖项,则可以执行 --as root-- slackpkg search packagename
;也可以使用以下命令查找指定的文件:slackpkg file-search packagename
。
(*)编译 Slackware 软件包时,首先从网站(如 slackbuilds.org、slacky.eu)下载源代码,在这些网站中,您可以看到每个软件包的依赖项。然后编译过程开始,最后使用installpkg
实用程序安装软件包
或者,您可以使用类似的实用程序slapt get
(http://software.jaos.org/) 是一个允许安装第三方 slackware 包解决依赖关系的实用程序。