未加载库:尝试运行 rails 服务器并连接到 mysql 时的 libssl.1.1.dylib

分享于2022年07月17日 libssl mysql mysql2 ruby-on-rails xcode 问答
【问题标题】:未加载库:尝试运行 rails 服务器并连接到 mysql 时的 libssl.1.1.dylib (LoadError)(Library not loaded: libssl.1.1.dylib (LoadError) when trying to run rails server and connect to mysql)
【发布时间】:2022-06-13 02:22:57
【问题描述】:

最近我将我的 MacOS 更新到 Monterey 12.3,其中包括对 xcode 的更新。

之后,我无法运行我一直在处理的 rails 应用程序。当我尝试启动服务器时,我不断收到此错误。

我尝试了不同的方式安装和删除 mysql。两者都使用来自 mysql 网站的 brew 安装和 DMG 文件。

我可以通过命令行访问数据库实例,但我认为他们的问题是我无法从应用程序连接。其他人有类似的问题吗?

这是完整的错误

/Users/gus/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/activesupport-6.0.3.6/lib/active_support/dependencies.rb:324:in `require': dlopen(/Users/gus/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/mysql2-0.5.3/lib/mysql2/mysql2.bundle, 0x0009): Library not loaded: libssl.1.1.dylib (LoadError)
  Referenced from: /Users/gus/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/mysql2-0.5.3/lib/mysql2/mysql2.bundle
  Reason: tried: 'libssl.1.1.dylib' (no such file), '/usr/local/lib/libssl.1.1.dylib' (no such file), '/usr/lib/libssl.1.1.dylib' (no such file), '/Users/gus/gus_project/Gus2021/libssl.1.1.dylib' (no such file), '/usr/local/lib/libssl.1.1.dylib' (no such file), '/usr/lib/libssl.1.1.dylib' (no such file) - /Users/gus/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/mysql2-0.5.3/lib/mysql2/mysql2.bundle


【解决方案1】:

如果有人遇到这个问题,这就是解决我的问题的方法。

openssl 的路径需要更新。

gem install mysql2 -- --with-ldflags=-L/opt/homebrew/opt/openssl@1.1/lib --with-cppflags=-I/opt/homebrew/opt/openssl@1.1/include

bundle install

显然这是用于使用 brew install 1.1 版的 openssl 安装