おいちゃんと呼ばれています

ウェブ技術や日々考えたことなどを綴っていきます

Ubuntu に Crypt::SSLeay をインストールするときに気をつけるべきコト

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 をインストールしておく必要もあります。これらを踏まえて、やらなければいけないコトをまとめると次のとおりです。

  1. OpenSSL のインストール*1
  2. libssl-dev パッケージのインストール(Debian 系システムの場合のみ)*2
  3. Crypt::SSLeay のインストール

その他の気をつけるべきコト

上記の手順について、次のような注意事項もあるので、Crypt::SSLeay の README はざっと目を通しておいたほうがよいかもしれません。

  • OpenSSL をインストールする際には、オプションでインストール先を指定する。
  • Crypt::SSLeay のインストールは、CPAN からではなくて、手で make する。


それでは、素敵な Perl ライフを。

*1:OpenSSL をインストールしていない状態で Crypt::SSLeay をインストールしようとすると「No installed SSL libraries found in any of the following places.」というエラーが表示されます。

*2:libssl-dev パッケージは、Synapic パッケージマネージャからインストールできます。