同事找到了解决办法 原文链接
首先安装一个 xcode
XCode -> Preferences -> Locations -> Command Line Tools -- choose xcode 11.X
brew install rbenv/tap/openssl@1.0
brew link openssl@1.0
export LDFLAGS="-L/usr/local/opt/openssl@1.0/lib"
export CPPFLAGS="-I/usr/local/opt/openssl@1.0/include"
export PKG_CONFIG_PATH="/usr/local/opt/openssl@1.0/lib/pkgconfig"
export PATH="/usr/local/opt/openssl@1.0/bin:$PATH"
rvm reinstall 2.2.0 --with-zlib-dir=$(brew --prefix zlib) --with-openssl-dir=/usr/local/opt/openssl@1.0 --with-openssl-lib=/usr/local/opt/openssl@1.0/lib --with-openssl-include=/usr/local/opt/openssl@1.0/include --with-opt-dir=/usr/local/opt/openssl@1.0
我也在安装 mac 的 ruby,我要安的是 2.2.5,
1.我安装的是商店自带的 xcode,我本地运行 xcode-select --install 说我已经安装成功了,也就代表 Command Line Tools -我安好了
2.我去安 homebrew,用的官网命令,连 vpn 很快
3.我去安 rvm,也是官网命令,然后 rvm list know 去看可以安的 ruby
4.rvm install 2.2.5,提示我安装依赖,我安了,包括 openssl 是 1.1 的,
5.然后报错了,网上的解决方法都是安 xcode,安 openssl,但我都安了还是报错,错误显示到 ruby 底层的 c 文件编译时候方法报错,
Error running '__rvm_make -j 10'报的外部错是这个
我试着研究了下报错的信息,没有给我明确的解决思路,
后来又试着运行了:
rvm reinstall 2.0.0 --with-openssl-dir=brew --prefix openssl
也没啥用
6.我又改用 rbenv 安装了一次 ruby,报错的信息是一样的,
所以我分析 rvm 和 rbenv 的本身没啥问题,而是编译环境有问题
我怀疑
1.我的编译环境有问题
2.不知道 xcode,homebrew,rvm 哪一个的版本是不是不对
3.是不是权限有点问题,但是报错跟权限完全无关直观上看
目前让我陷入苦恼,有哪位大神看到可以回我下不,新 mac M1 芯片,新系统
https://github.com/rvm/rvm/issues/4819
2.4 以下 ruby 不再支持了,要指定 openssl 的低版本才能装
实际情况是就算是能装上但是跑 bundle 是不行的,至少暂时还没找到解决办法
openssl1.1 是 ruby2.4 以上版本才能用,先安装 openssl1.0
wget https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb
brew install openssl.rb