9

こんにちは、次のコードを使用して rvm 経由で ruby​​ をインストールしようとしています。

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: エラー: 'HMAC_CTX_copy' のタイプが競合しています</p>

451 /Users/Sebastian/.rvm/usr/include/openssl/hmac.h:102: エラー: 'HMAC_CTX_copy' の以前の宣言がここにありました

452 openssl_missing.h:95: エラー: 'EVP_CIPHER_CTX_copy' のタイプが競合しています</p>

453 /Users/Sebastian/.rvm/usr/include/openssl/evp.h:503: エラー: 'EVP_CIPHER_CTX_copy' の以前の宣言がここにありました

454 openssl_missing.c:27: エラー: 'HMAC_CTX_copy' のタイプが競合しています</p>

455 /Users/Sebastian/.rvm/usr/include/openssl/hmac.h:102: エラー: 'HMAC_CTX_copy' の以前の宣言がここにありました

456 openssl_missing.c:122: エラー: 'EVP_CIPHER_CTX_copy' の型が競合しています</p>

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のインストールに関連している可能性があると読みましたが、関連するものはすべて削除したことを確認しました.

一方、openssl ファイルは/usr/bin/の別の場所にあります。これが競合を引き起こす可能性があるかどうかはわかりませんが、あえて削除しませんでした。

これについてあなたの助けをいただければ幸いです。

ありがとうございました

4

2 に答える 2

8

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不足しているパッケージがないことを確認できます。

  • 私の場合は 1.9.3-p392 の ruby​​ を再インストールします。

    $ rvm reinstall 1.9.3-p392

それが役に立てば幸い!

于 2013-03-20T19:22:14.697 に答える
0

私もこれに出くわしました。こちらの手順に従ってください。

基本的に、ターミナルで:

Homebrewをインストールして、これを試すこともできます。

$ brew update
$ brew install openssl
$ brew link openssl --force
$ brew install curl-ca-bundle
于 2013-03-19T16:23:01.387 に答える