LinuxのPerlを最新版にアップデートするには?
CentOSにインストールされているPerlのバージョンを最新版に更新する必要があったのでやってみました。手順をまとめましたので、参考にしてみてください。
基本的にはソースをコンパイルしてインストールする形になります。yumとかでアップデートする方法もあるようなのですが、設定ファイルをいじったりするようで少し心配だったので手動でやってみました。
まず、最新版をPerlのサイトからダウンロードします。
https://www.perl.org/get.html
wgetで最新版をダウンロードして、tarコマンドdで解凍し、そのディレクトリに入ります。
# wget http://www.cpan.org/src/5.0/perl-5.22.0.tar.gz
# tar xvfz perl-5.22.0.tar.gz
# cd perl-5.22.0
# tar xvfz perl-5.22.0.tar.gz
# cd perl-5.22.0
configureするときは、次のようにオプションを追加しています。
これは前バージョンの環境を引き継がないということを伝えています。
# sh Configure -des -Dusethreads -Dinc_version_list=none
これがすめば、後はいつも通りの手順です。
# make
# make test
# make install
# make test
# make install
make から make installまではちょっと時間がかかりました。
インストールが完了しても、まだバージョンは新しいものにはなっていないので、注意が必要です。ためしにバージョンを確認してみましょう。
# perl -v
This is perl, v5.8.8 built for i386-linux-thread-multi
This is perl, v5.8.8 built for i386-linux-thread-multi
インストールしたものは5.22.0なのに、5.8.8のままです。
どうやらソースからインストールしたものは、/usr/local/bin/にインストールされたようで、これを既存のパスから書き換えてやります。
# which perl
/usr/bin/perl
/usr/bin/perl
perlの実行パスは/usr/bin/perlです。
シンボリックリンクでperlのパスを新しいものに書き換えます。
# cd /usr/bin/perl
# mv perl perl-5.8.8 ← 古いものを念のためコピーしておきます。
# ln -s /usr/local/bin/perl . ←シンボリックリンクで新しいものに書き換えます。
# mv perl perl-5.8.8 ← 古いものを念のためコピーしておきます。
# ln -s /usr/local/bin/perl . ←シンボリックリンクで新しいものに書き換えます。
最後にバージョンを確認してみます。
# perl -v
This is perl 5, version 22, subversion 0 (v5.22.0) built for i686-linux-thread-multi
This is perl 5, version 22, subversion 0 (v5.22.0) built for i686-linux-thread-multi
これで最新版のPerlを使えるようになりました。