Perl(例えば LWP とか WWW::Mechanize とか)を用いて、HTTPS 接続(SSL 接続)しようとしたとき、
501 Protocol scheme 'https' is not supported (Crypt::SSLeay not installed)
というエラーが表示されることがあります。
要は「Crypt::SSLeay をインストールしてください」ということなのですが、Ubuntu(またはその他の Debian 系のディストリビューション)の場合にはハマりどころがあったので、簡単にメモしておきます。
あらかじめ libssl-dev パッケージのインストールを
いきなり結論を言っちゃうと、Ubuntu に Crypt::SSLeay をインストールするためには、あらかじめ libssl-dev パッケージをインストールしておく必要があります。Crypt::SSLeay の README の英語原文 には書かれているものの、日本語訳のほうには書かれていないので注意が必要です。
また、さらに、あらかじめ OpenSSL をインストールしておく必要もあります。これらを踏まえて、やらなければいけないコトをまとめると次のとおりです。
その他の気をつけるべきコト
上記の手順について、次のような注意事項もあるので、Crypt::SSLeay の README はざっと目を通しておいたほうがよいかもしれません。
- OpenSSL をインストールする際には、オプションでインストール先を指定する。
- Crypt::SSLeay のインストールは、CPAN からではなくて、手で make する。
それでは、素敵な Perl ライフを。