読者です 読者をやめる 読者になる 読者になる

アルパカ三銃士

〜アルパカに酔いしれる獣たちへ捧げる〜

cpanm で Crypt::SSLeay がインストールできない問題

Crypt::SSLeay をインストールしようとして, Cannot link with any of the requested SSL libraries 'ssl, crypto, ssl32, ssleay32, eay32, libeay32, z' と build.log に出力されていたので, いつも通り brew link openssl をやって解決しようとすると

Warning: Refusing to link: openssl
Linking keg-only openssl means you may end up linking against the insecure,
deprecated system OpenSSL while using the headers from Homebrew's openssl.
Instead, pass the full include/library paths to your compiler e.g.:
  -I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib

と表示されて, brew から link ができなかった.
いろいろ調べてみるとセキュリティの都合上 brew から link ができなくなったらしいので, どうやってインストールしようか悩んで, とりあえず Crypt::SSLeay の Makefile 読んだら環境変数で渡せそうだったので, 自分の使っている rc ファイル(僕の環境では zsh なので .zshrc)に次の 2 行を書き込んでインストールに成功した.

export OPENSSL_INCLUDE="/usr/local/opt/openssl/include"
export OPENSSL_LIB="/usr/local/opt/openssl/lib"

brew link ってもしかするとこれと同じことやってたんですかね...)