如何阻止自制软件抱怨$ PATH中的* -config文件?

时间:2013-11-22 11:56:14

标签: homebrew rbenv

我收到brew doctor

的以下错误消息
$ brew doctor
Warning: "config" scripts exist outside your system or Homebrew directories.
`./configure` scripts often look for *-config scripts to determine if
software packages are installed, and what additional flags to use when
compiling and linking.

Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew provided
script of the same name. We found the following "config" scripts:

    /Users/username/.rbenv/shims/passenger-config

我认为这是因为自制软件使用的* -config模式,因为该文件的目录位于$ PATH中。我仍然不知道如何解决这个问题。

$ PATH看起来像这样(我重新格式化它以便更容易看到):

/Users/username/.rbenv/shims
/Users/username/.nvm/v0.9.8/bin
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/sbin
/Users/username/bin

我已经通过brew安装了rbenv。

2 个答案:

答案 0 :(得分:10)

罪魁祸首确实是HomeBrew中的这一行:

https://github.com/Homebrew/homebrew/blob/master/Library/Homebrew/cmd/doctor.rb#L611

它正在寻找遵循惯例* -config的文件,在这种情况下,你的文件就是这样。如前所述,这不是一个错误,只是一个警告。为了解决这个问题,他们必须拥有一个不可扩展的所有可能的白名单,所以他们做了最好的猜测。

我的机器上有类似的东西:

/Users/duncan/.rbenv/shims/brightbox-config
/Users/duncan/.rbenv/shims/passenger-config

答案 1 :(得分:-1)

这不是错误消息,而是警告。如果您遇到问题,brew doctor会提供有关如何修复系统的建议。如果你没有问题,或者你知道的更好,那么就没有必要删除所有这些警告,然后才能继续生活。只是忽略它。

如果您可以生成特定规则,为什么以及如何忽略此文件,您可以使用Homebrew提交错误。