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

MacOS Big Sur安装mysql2出现library not found错误怎么解决

macOS Big Sur 安装mysql2 gem依赖缺失问题解决方案

问题原因

你之前的执行命令每次仅通过--with-opt-dir指定单个依赖路径,会覆盖上一次的配置,导致只能识别单个依赖库,另一个库始终找不到路径,所以会交替报library not found for -lzstd和library not found for -lssl错误。

解决方案

--with-opt-dir参数支持传入多个路径,路径之间用冒号分隔,即可同时指定多个依赖库的查找路径。

前置操作

先确认已通过Homebrew安装所需依赖:

brew install openssl zstd

方案1:直接传入合并路径安装

执行以下命令即可完成安装:

gem install mysql2 -- --with-opt-dir="$(brew --prefix openssl):$(brew --prefix zstd)"

方案2:通过环境变量指定路径(方案1无效时使用)

先导出编译所需的头文件、库文件路径,再执行安装:

export LDFLAGS="-L$(brew --prefix openssl)/lib -L$(brew --prefix zstd)/lib"
export CPPFLAGS="-I$(brew --prefix openssl)/include -I$(brew --prefix zstd)/include"
gem install mysql2

Bundler用户配置

如果项目使用Bundler管理依赖,可执行以下命令配置mysql2的编译参数,避免后续每次bundle install都需要手动处理:

bundle config set --local build.mysql2 --with-opt-dir="$(brew --prefix openssl):$(brew --prefix zstd)"
# 配置完成后执行正常安装即可
bundle install

内容的提问来源于stack exchange,提问作者Javier Gonzales

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 08:54:05