我正在将 Ruby/Rails 应用程序移动到 Centos 6.7 服务器(从 Ubuntu)并通过 rbenv 安装 ruby。
我运行rbenv install -v 1.9.3-p194
后,它会开始编译,但构建失败。构建输出日志给出以下输出,显示构建失败。
ossl_pkey_ec.c:816: error: ‘EC_GROUP_new_curve_GF2m’ undeclared (first use in this function)
ossl_pkey_ec.c:816: error: (Each undeclared identifier is reported only once
ossl_pkey_ec.c:816: error: for each function it appears in.)
make[2]: *** [ossl_pkey_ec.o] Error 1
make[1]: *** [ext/openssl/all] Error 2
我在机器上安装了所有开发工具,还安装了 openssl-devel,它与 Centos 版本匹配。但我在这里遇到了障碍。
之前有人遇到过这个问题吗?如果有,我该如何解决?完整输出在 pastebin 中这里
答案1
显然,这是 openssl 标头和某些操作系统的已知问题。我运行以下命令成功构建并合并了补丁。
curl -fsSL "https://github.com/ruby/ruby/commit/0d58bb55985e787364b0235e5e69278d0f0ad4b0.patch" | filterdiff -x a/ChangeLog | rbenv install --patch -v 1.9.3-p194