使用openssl重新编译/重新安装Ruby 2.0

时间:2013-09-03 14:35:30

标签: ruby linux ubuntu openssl gitlab

我目前正在尝试在机架空间云中的新Ubuntu服务器上安装gitlab,这需要我安装Ruby 2.0。

所以我通过curl下载了ruby并通过执行以下操作安装它:

./configure
make
make install

然后,在尝试安装gem时,我收到了一条错误cannot load such file -- openssl

显然我错过了开放的ssl。所以我安装了openssl和libssl-dev,因为我听说如果你使用的是Ubuntu,你也需要这个:

apt-get install openssl
apt-get install libssl-dev 

然后我重复上述步骤重新安装ruby:

./configure
make
make install

然而,在所有这些之后,我仍然得到相同的openssl错误:cannot load such file -- openssl

我认为我没有正确地重新安装ruby。必须有一些我缺少的步骤来删除初始配置,但是没有任何谷歌搜索产生一个对我有意义的答案。有谁知道我会怎么做呢?

编辑:我正在从以下来源下载ruby:ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p247.tar.gz

1 个答案:

答案 0 :(得分:1)

我在标准的debian 7上做了这个,在/ opt / openssl下安装了一个新的openssl,就像这样

$cd ~/ruby-src 
$./configure --prefix=/opt/ruby --without-openssl
$make
$sudo make install

然后使用ext / openssl /

$export PATH=/opt/ruby/bin:/opt/openssl/bin:$PATH
$which ruby
/opt/ruby/bin/ruby
$which openssl
/opt/openssl/bin/openssl
$cd ~/ruby-src/ext/openssl/
$ruby extconf.rb --with-openssl-dir=/opt/openssl
$make
$sudo make install

我必须在ossl_ssl.c中用OP_MSIE_SSLV2_RSA_PADDING注释掉这一行,因为当前的openssl发行版中不存在该常量,但是所有内容都编译得很干净。