可以试试用 rbenv 来安装,安装老版本 ruby 时,它会自动安装 1.0.2u 版的 openssl。
一开始我本地测试安装时报错 ./openssl_missing.h:71:6: error: conflicting types for 'HMAC_CTX_copy'
, 根据 https://github.com/rbenv/rbenv/issues/661 解决方法是加环境变量 CFLAGS。加上后我本地安装成功了,我的安装命令如下
CFLAGS="-Wno-error=implicit-function-declaration" rbenv install 2.0.0-p648
Linux 上我遇到的情况是,除了 openssl 需要 1.0.2(rbenv 会自动编译),还需要 gcc6 才能成功编译。