警告:在 /usr/local/lib 中发现未酿造的 dylib

Eva*_*nss 16 homebrew

当我输入命令 brew doctor 时,出现以下错误。这有什么好担心的?

我对命令行的东西很陌生。我使用自制软件来安装 Drush(用于 Drupal)。

Last login: Wed Oct  9 14:59:40 on ttys001
unknown:~ MY-USERNAME$ brew doctor
Warning: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected dylibs:
    /usr/local/lib/libTrAPI.dylib 
Run Code Online (Sandbox Code Playgroud)

小智 20

libTrAPI.dylib 适用于您的 VPN 软件。如果您想继续使用您的VPN,请不要删除它,只需将其添加到doctor.rb 中的白名单中,然后homebrew 就不会抱怨它了。

要找到您的医生.rb 只需运行

locate doctor.rb
Run Code Online (Sandbox Code Playgroud)

查找 white_list,我的在第 105 行。它可能看起来像这样。

white_list = {
  "libfuse.2.dylib" => "MacFuse",
  "libfuse_ino64.2.dylib" => "MacFuse",
  "/usr/local/lib/libTrAPI.dylib" => "TrAPI"
}
Run Code Online (Sandbox Code Playgroud)

  • 几行说明如何将文件添加到白名单将使这是一个更好的答案。 (2认同)
  • @Anne,命令 `brew doctor` 建议将撤消您的更改。但是,如果这是您想要保留的更改,那么您可以改为提交它:`git add /usr/local/Library/Homebrew/cmd/doctor.rb`,然后`git commit -m '告诉 brew doctor 忽略 libTrAPI .dylib'`。 (2认同)
  • [截至 2016 年](https://github.com/Homebrew/legacy-homebrew/pull/47665/commits),白名单现在位于 /usr/local/Homebrew/Library/Homebrew/diagnostic.rb 中。 (2认同)
  • 注意:从 https://github.com/Homebrew/brew/pull/7703/ 开始,该列表已重命名为“allow_list”。从我当前的brew版本(“3.5.9-102-g4027c62”)开始,它是“/usr/local/Homebrew/Library/Homebrew/diagnostic.rb”的“222”行 (2认同)

Chr*_*ian -1

这些文件(在您的情况下只有一个)是旧安装中的残留文件。完全不用担心。

您可以使用以下方法轻松删除它:

rm /usr/local/lib/libTrAPI.dylib
Run Code Online (Sandbox Code Playgroud)

  • 这是一个可怕的答案,请考虑布莱恩·卡尔森的回答。 (12认同)
  • 详细说明@scravy,这是一个可怕的答案的原因是,通过删除它们,您可能会破坏某些东西。不幸的是,并非您计算机上的“所有内容”都已由 Homebrew 安装,也不能通过 Homebrew 安装所有内容。“brew doctor”本身实际上表明,您应该尝试清理您可以清理的内容,并忽略您无法轻松修复的警告。这是因为 Homebrew 知道他们无法对您计算机上的所有内容负责。 (3认同)