5

我想获取依赖于 gcc 的已安装软件包的列表(随 homebrew 一起安装)。当我尝试:

brew uses --installed gcc

它没有结果。如果我用 来检查例如 r 的依赖关系brew deps r,它会返回gcc(等等)。所以我假设brew uses至少应该返回 value r

有没有人遇到过类似的问题并且可以对此有所了解?

4

1 回答 1

3

这不是一个权威的答案,但在我看来,这是因为rdepends on :fortran,这是一种可以以不同方式解决的虚拟依赖。 brew deps回答问题,在安装此公式之前我需要安装什么。在您的情况下,它决定安装gcc是满足:fortran要求的一种方式。但是显然不支持相反的:它不知道仅仅看gcc这个可以用来解决虚拟依赖:fortran. 如果考虑在 Homebrew 中实现虚拟依赖项的方式,这在某种程度上是合理的。通常,它只是在文件系统中查看所需的二进制文件是否可用(包括在 Homebrew 之外提供的二进制文件),但一旦找到候选文件,它就不会建立公式依赖链接。

(其实这种情况可能更复杂,看brew deps r --tree看,其实依赖是 on :gcc,又是一层虚依赖。)

尽管与您的问题没有直接关系,但请注意deps默认情况下是递归的,但uses不是。因此,为了获得对称图片,您需要使用deps -1or uses --recursive

于 2014-11-08T23:57:04.050 回答