我已经将开发环境更新为最新版本的OSX Catalina。然后,nginx和mysql服务器已停止工作。当我尝试运行其中任何一个时,都会出现相同的错误:
dyld: Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib
Referenced from: /usr/local/bin/nginx
Reason: image not found
我正在阅读很多文章,他们的说法大致相同:Openssl是新OsX的依赖库。修复,看起来很轻松,删除了openssl安装并重新安装了最新版本,即openssl@1.1。我已经做到了,但是我仍然遇到同样的错误。
我认为是因为根据错误消息,nginx和mysql都期望版本1.0.0,而我正在安装最新的1.1。我一直在尝试通过自制软件安装1.0版,但找不到。是否可以获取此旧版本?还是应该升级我的Nginx和mysql软件版本?
答案 0 :(得分:2)
我有同样的问题,不是升级到Catalina,而是因为安装了升级我的OpenSSL版本的程序,所以它破坏了其他依赖OpenSSL的应用程序。 就我而言,是Ruby(带有RVM的2.3.8)和MySQL(实际上是MariaDb)。就Ruby而言,它与新版本的OpenSSL不兼容,因此我必须以pkg依赖于RVM的方式安装
rvm pkg install openssl
rvm reinstall 2.3.8 --with-openssl-dir=$HOME/.rvm/usr
对于MySQL,我只是对其进行了升级,因此它在系统上安装了新的openSSL。
brew upgrade mariadb
那解决了我的问题。我认为在您的情况下,您可以升级(或卸载并重新安装)MySQL和Nginx,因此它们将正确使用新版本的OpenSSL。
(P.D。对于MySQL,它可以毫无问题地保存我的数据库)