我想获取依赖于gcc(与自制软件一起安装)的已安装软件包列表。当我尝试:
brew uses --installed gcc
它没有结果。如果我检查,例如r与brew deps r
的依赖关系,返回gcc
(以及其他)。所以我假设brew uses
至少应该返回值r
。
有没有人遇到过类似的问题,可以对此有所了解?
答案 0 :(得分:2)
这不是一个权威的答案,但在我看来,这是因为r
依赖于:fortran
,这是一种可以通过不同方式解决的虚拟依赖关系。 brew deps
回答了这个问题,在安装此公式之前我需要安装什么。在您的情况下,它决定安装gcc
是满足:fortran
要求的一种方法。但反过来显然不受支持:它只是通过查看gcc
来了解这可以用来解决虚拟依赖关系:fortran
。如果考虑在Homebrew中实现虚拟依赖关系的方式,这有点合理。通常,它只是在文件系统中查看是否有所需的二进制文件(包括在Homebrew之外提供的二进制文件),但是一旦找到候选项,它就不会建立公式依赖关系链接。
(事实上,这种情况可能更复杂。如果你看一下brew deps r --tree
,你会发现依赖实际上是:gcc
,这是虚拟依赖的另一个层次。)< / p>
虽然与您的问题没有直接关系,但请注意默认情况下deps
是递归的,但uses
不是。因此,为了获得对称图片,您需要使用deps -1
或uses --recursive
。