You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ruby项目执行bundle install安装mysql2失败,openssl路径不符如何解决

这个报错常见于M系列芯片的Mac设备,ARM架构下Homebrew的默认安装路径为/opt/homebrew/,和Intel芯片的/usr/local/路径不同,mysql2编译时默认按Intel路径查找openssl库导致链接失败。

解决方案

前置检查

先确认openssl@1.1已安装,未安装执行以下命令:

brew install openssl@1.1

方法一:单独安装对应版本mysql2 gem

执行以下命令指定openssl路径编译安装:

gem install mysql2 -v '0.5.3' -- --with-opt-dir="$(brew --prefix openssl@1.1)"

如果仍报错,可完整指定lib和头文件路径:

gem install mysql2 -v '0.5.3' -- \
  --with-opt-dir="$(brew --prefix openssl@1.1)" \
  --with-ldflags="-L$(brew --prefix openssl@1.1)/lib" \
  --with-cppflags="-I$(brew --prefix openssl@1.1)/include"

安装完成后再执行bundle install即可。

方法二:为Bundler配置编译参数(无需单独安装gem)

在项目根目录执行以下命令,给mysql2配置固定编译参数:

bundle config set --local build.mysql2 "--with-opt-dir=$(brew --prefix openssl@1.1)"

配置完成后直接执行bundle install即可正常完成依赖安装。

异常排查

如果以上操作后仍提示找不到MySQL相关库,可追加MySQL路径参数:

  • 单独安装gem时在命令末尾追加--with-mysql-dir=$(brew --prefix mysql)
  • Bundler配置时将上述参数追加到build.mysql2的配置值末尾即可。

内容的提问来源于stack exchange,提问作者Andre Aditya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 22:24:02