brew doctor可检查homebrew自身完整性,识别权限、路径、xcode工具等缺失;brew list --unlinked和brew missing分别排查未链接包与缺失依赖;brew info则揭示具体软件的依赖及配置要求。
homebrew 本身不负责“检查系统缺失的依赖”这种底层系统级诊断,它只管理自己安装的软件包及其相互依赖。但你可以用 homebrew 的几个关键命令,快速识别当前环境里可能影响软件正常运行的常见缺失项或异常状态——这正是多数人实际想查的“缺失依赖”。
下面分三类场景说明怎么查、怎么看、怎么处理:
检查 Homebrew 自身是否完整可用
这是第一步,也是最容易被忽略的基础。运行:
brew doctor
它会扫描 /usr/local(Intel Mac)或 /opt/homebrew(Apple Silicon)目录下的权限、路径、冲突文件等。
常见提示含义:
-
Warning: Unbrewed dylibs were found in /usr/local/lib→ 系统里有非 Homebrew 安装的动态库,可能干扰新装软件 -
Warning: You have unlinked kegs→ 某些已安装的包没正确链接(比如brew install python后没执行brew link python) -
Error: Your Xcode is outdated或Command Line Tools not installed→ 缺少编译基础,很多包无法安装
检查已安装软件是否缺依赖或状态异常
Homebrew 不会主动告诉你“某个 App 缺什么”,但它能帮你确认:
-
哪些包装了但没链接(导致命令找不到):
brew list --unlinked
如果有输出,说明这些包已下载但未激活,运行
brew link <name></name>就能修复。 -
哪些包装了但依赖损坏或缺失:
brew missing
它会列出所有已安装 formulae 中,当前缺失的依赖项(比如
openssl被删了,而curl依赖它)。输出格式类似:curl: openssl nginx: pcre2, openssl, zlib
这时只需
brew install openssl pcre2 zlib即可补全。
检查某个具体软件运行时缺什么(终端报 command not found 或 dyld error)
如果某命令打不开,比如输入 ffmpeg 提示 command not found,先确认它是否由 Homebrew 安装:
brew search ffmpeg brew list | grep ffmpeg
如果已安装却用不了,可能是:
- 没加到 PATH(尤其 Apple Silicon 用户常漏配
/opt/homebrew/bin) - 依赖库路径未生效(如
dyld: Library not loaded: @rpath/libavcodec.60.dylib)
这时运行:brew info ffmpeg
看输出里的
Dependencies和Caveats部分,后者常会提醒你手动配置 shell 或链接路径。
不需要装额外工具,这几条命令组合起来,就能覆盖 90% 的“依赖缺失”排查需求。重点不是找“系统缺什么”,而是确认“Homebrew 管理的这部分是否健康”。










