MacOS Ventura安装Jekyll报错:找不到'openssl/ssl.h'文件
解决MacOS Ventura 13.0安装Jekyll时OpenSSL头文件缺失问题
问题原因
编译eventmachine gem时找不到OpenSSL头文件(openssl/ssl.h),Mac自带的LibreSSL无法满足编译需求,而brew安装的openssl@3路径未被编译工具正确识别。
解决方案
1. 确保brew安装最新的openssl@3
先更新brew并安装openssl@3:
brew update && brew install openssl@3
2. 临时指定环境变量安装Jekyll
通过环境变量告知gem编译工具OpenSSL的位置,执行以下命令:
export PATH="/usr/local/opt/openssl@3/bin:$PATH" export LDFLAGS="-L/usr/local/opt/openssl@3/lib" export CPPFLAGS="-I/usr/local/opt/openssl@3/include" gem install jekyll
3. (可选)单独安装eventmachine(若上述命令仍失败)
如果Jekyll安装卡在eventmachine环节,可单独指定OpenSSL路径安装该gem:
gem install eventmachine -- --with-openssl-dir=/usr/local/opt/openssl@3
安装完成后再执行gem install jekyll。
4. (进阶)重新安装Ruby(适配rvm环境)
若使用rvm管理Ruby,可能Ruby编译时依赖了系统LibreSSL,导致后续gem编译异常,可重新安装Ruby并指定OpenSSL路径:
rvm reinstall 3.0.0 --with-openssl-dir=/usr/local/opt/openssl@3
完成后再次安装Jekyll。
验证安装成功
执行以下命令确认Jekyll安装完成:
jekyll -v
内容的提问来源于stack exchange,提问作者bdeweesevans
相关产品推荐
相关产品推荐

