【问题标题】:dyld: Library not loaded: /usr/local/opt/tidy-html5/lib/libtidy.5.dylibdyld:库未加载:/usr/local/opt/tidy-html5/lib/libtidy.5.dylib
【发布时间】:2021-11-20 03:28:52
【问题描述】:
我在 mac 上的 php 有问题,以前我有 2 个 php 版本 php7.3 和 php7.2。出于某种原因,我卸载了它们,然后重新安装了 php7.2。当我运行 brew link php@7.2 和 php -v 我收到消息 dyld: Library not loaded: /usr/local/opt/tidy-html5/lib/libtidy.5.dylib Referenced from: /usr/local/opt/php@7.2/bin/php 我已经运行命令 brew update brew upgrade php reinstall php@7.2 但我收到相同的错误消息。
【问题讨论】:
标签:
php
laravel
terminal
macos-big-sur
valet
【解决方案1】:
在将 php@7.4 (back) 切换到 php 7.2 后遇到了同样的问题
重新安装 php@7.2 没有帮助。有什么帮助是:
brew reinstall tidy-html5
【解决方案2】:
好的,我确定这不是正确的方法,但它对我有用。我相信这可能与 PHP 7.2 的生命周期结束以及安装不正确有关,因为它现在已被上游弃用。
我继续查看/usr/local/opt/tidy-html5/lib/ 文件夹,确实libtidy.5.dylib 不存在......但libtidy.5.8.0.dylib 存在。所以我只是将我必须的 dylib 符号链接到 libtidy.5.dylib,如下所示:
ln -s /usr/local/opt/tidy-html5/lib/libtidy.5.8.0.dylib /usr/local/opt/tidy-html5/lib/libtidy.5.dylib
效果很好!
在/usr/local/opt/openldap/lib/ 文件夹中还有一些其他库需要相同的处理,但这是相同的想法。查看找不到库的文件夹,它可能只是用更具体的版本号命名。 ln -s 他们(甚至是 cp 或 mv 他们)来匹配 PHP 正在寻找的文件,你会很高兴的。
【解决方案3】:
就我而言,我必须使用 brew 卸载 php@7.2。如果你在 ./bash_profile 中有类似的相关配置,别忘了检查一下,以免出现配置错误的问题