Homebrew:`brew 使用 --installed gcc` 没有给出任何结果

Mar*_*arc 5 homebrew dependencies gcc r uses

我想获取依赖于 gcc(使用自制软件安装)的已安装软件包列表。当我尝试:

brew uses --installed gcc

它没有结果。如果我检查例如 r 的依赖关系brew deps r,它会返回gcc(除其他外)。所以我认为brew uses至少应该返回 value r

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

Pet*_*aut 3

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

(事实上​​,这种情况可能更复杂。如果您查看brew deps r --tree,您会发现依赖关系实际上位于:gcc,这是虚拟依赖关系的另一个级别。)

虽然与您的问题没有直接关系,但还要注意deps默认情况下是递归的,但uses事实并非如此。因此,为了获得对称图片,您需要使用deps -1or uses --recursive