升级到山狮后,我遇到了类似的问题.
而不是复制libssl.*根据Slack的建议,确保/usr/lib/libssl.dylib
实际上是指向库的最新版本的软链接.
例如,在我的机器上,ls -l /usr/lib/libssl*
给出:
lrwxr-xr-x 1 root wheel 46B Jun 27 15:24 /usr/lib/libssl.1.0.0.dylib -> /Library/PostgreSQL/9.1/lib/libssl.1.0.0.dylib
lrwxr-xr-x 1 root wheel 27B Jul 30 10:31 /usr/lib/libssl.dylib -> /usr/lib/libssl.1.0.0.dylib
如果libssl.dylib
没有链接到错误版本提到的版本,请确保您拥有该版本的库,然后确保/usr/lib/libssl.dylib
指向它,而不是旧版本.
如果链接不存在,就这样创建它
sudo ln -s library_to_link_to link_to_create
当然,使用机器的正确位置.对我来说,结果是:
sudo ln -s /usr/lib/libssl.1.0.0.dylib /usr/lib/libssl.dylib
Edit:
似乎有些人对我的部分解决方案有问题.也就是说,删除这些重要的库甚至会暂时导致操作系统出现问题.
每Purrell's answer个,确保在使用ln
命令时包含-fs
个标志,这有助于确保库不会在短时间内丢失.例如.,
sudo ln -fs /usr/lib/libssl.1.0.0.dylib /usr/lib/libssl.dylib
sudo ln -fs /usr/lib/libcrypto.1.0.0.dylib /usr/lib/libcrypto.dylib