update - 在Mac OSX 10.6.8上安装ruby 1.9.3时出现Openssl错误信息




xcode9 2 (2)

您好我正在尝试使用下面的代码通过rvm安装红宝石:

CC=/usr/bin/gcc-4.2 rvm install 1.9.3 --with-iconv-dir=$rvm_path/usr --with-openssh-dir=$rvm_path/usr

但是我在(安装)make.log文件上遇到错误:

在openssl_missing.c包含的文件中:22:450 openssl_missing.h:71:error:'HMAC_CTX_copy'

451 /Users/Sebastian/.rvm/usr/include/openssl/hmac.h:102:错误:之前的'HMAC_CTX_copy'声明在这里

452 openssl_missing.h:95:error:'EVP_CIPHER_CTX_copy'的冲突类型

453 /Users/Sebastian/.rvm/usr/include/openssl/evp.h:503:错误:之前的'EVP_CIPHER_CTX_copy'声明在这里

454 openssl_missing.c:27:error:'HMAC_CTX_copy'的冲突类型

455 /Users/Sebastian/.rvm/usr/include/openssl/hmac.h:102:错误:之前的'HMAC_CTX_copy'声明在这里

456 openssl_missing.c:122:错误:'EVP_CIPHER_CTX_copy'的冲突类型

457 /Users/Sebastian/.rvm/usr/include/openssl/evp.h:503:错误:之前的'EVP_CIPHER_CTX_copy'声明在这里

458 make [2]:[openssl_missing.o]错误1

459 make [1]:[ext / openssl / all]错误2

460 make:[build-ext]错误2

我读过,这可能与macports安装有关,但我确保我删除了与它有关的一切。

另一方面,在/ usr / bin /的另一个位置有一个openssl文件。 我不确定这是否会导致冲突,但我不敢删除它。

我会很感激你的帮助。

谢谢


我也遇到了这个。 尝试按照这里的步骤。

基本上,在码头上:

你也可以安装Homebrew并试试这个:

$ brew update
$ brew install openssl
$ brew link openssl --force
$ brew install curl-ca-bundle

在将rvm的openssl pkg安装到testdrive ruby​​ 2.0.0后,我遇到了类似的问题。

经过一番捣乱之后,下面解决了这个问题:

  • 让您的rvm保持最新:

    $ rvm get head

  • 删除您手动安装的软件包:

    $ rvm pkg remove

  • 直接获取要求:

    $ rvm requirements run

    在这里我得到了一个缺少必需的软件包列表:

   Installing requirements for osx/10.8/x86_64, might require sudo password
   Skipping `brew update` make sure your formulas are up to date.
-> Missing required packages: libtool, libxml2, libxslt, sqlite.
   Skipping update of certificates in '/usr/local/etc/openssl/cert.pem'.
  • 我“自制”了这些软件包:

    $ brew update

    $ brew install libtool libxml2 libxslt sqlite

您可以通过再次运行rvm requirements run命令来重新检查要求,以rvm requirements run您没有丢失包。

  • 重新安装红宝石,在我的情况1.9.3-p392:

    $ rvm reinstall 1.9.3-p392

希望能帮助到你!







osx-snow-leopard