CentOS7でPerlbrewをインストールして複数のバージョンのPerl5を管理する方法
序章
Perl 5 は、成熟したフル機能のプログラミング言語です。 これは、世界中のミッションクリティカルなビジネスシステムを含む、あらゆるタイプの生産プロジェクトで使用されています。 Perlbrew ソフトウェアパッケージを使用すると、Perl 5プログラミング言語のバージョンをインストール、削除、および切り替えることができます。
PerlbrewはホームディレクトリにPerlをインストールし、インストールするPerlの各バージョンは他のバージョンから独立しています。 これにより、他のバージョンに干渉したり、影響を受けたりすることなく、複数のPerlバージョンに対してコードをテストできます。 これには、オペレーティングシステムのデフォルトのPerlパッケージが含まれます。これは通常、最新の安定バージョンよりもはるかに古いものです。
このチュートリアルでは、Perlbrewをインストールし、それを使用してPerl5のバージョンをインストールしてテストします。
前提条件
このガイドに従うには、次のものが必要です。
- CentOS7初期サーバーセットアップガイドに従ってセットアップされた1台のCentOS7サーバー(sudo非rootユーザーとファイアウォールを含む)。
ステップ1-Perlbrewをインストールする
Perlbrewをインストールする前に、いくつかの前提条件パッケージが必要です。 Perlbrewのニーズ gcc
、コンパイラ、および bzip2
、Perlをコンパイルしてインストールするための圧縮ユーティリティ。 これらのパッケージはデフォルトではCentOS7にインストールされていませんが、サーバーにいくつかのパッケージを追加している場合は、これら2つのパッケージがすでにインストールされている可能性があります。 足りないものを簡単に見つけることができます。
注:次の例に表示されるパッケージのバージョン番号は、これらのパッケージが定期的に改訂されているため、このガイドに示されている番号よりも大きい場合があります。
Perlのビルドには、2つのgcc関連パッケージが必要です。 libgcc
と gcc
. これらのパッケージがすでにあるかどうかを確認するには、次のコマンドを実行します。
- rpm -qa | grep gcc
それらがインストールされている場合は、次の出力が表示されます。
Is the gcc package installed?libgcc-4.8.5-11.el7.x86_64
gcc-4.8.5-11.el7.x86_64
CentOS7には libgcc
デフォルトでパッケージ化されているため、インストールできます gcc
次のコマンドを使用します。
sudo yum install gcc
また、 bzip2-libs
と bzip2
パッケージ。 それらもインストールされていることを確認してください。
- rpm -qa | grep bzip2
両方がインストールされている場合は、次のように表示されます。
Is the bzip2 package installed?bzip2-libs-1.0.6-13.el7.x86_64
bzip2-1.0.6-13.el7.x86_64
デフォルトでは、CentOS7には bzip2-libs
パッケージ。 追加します bzip2
パッケージ:
- sudo yum install bzip2
最後に、 patch
効用。
- sudo yum install patch
前提条件が整ったら、Perlbrewをインストールできます。 インストールスクリプトをサーバーにダウンロードします。
- curl -L https://install.perlbrew.pl -o install.perlbrew.pl
スクリプトを実行する前にスクリプトの内容を監査するには、スクリプトをテキストエディターで開いて、その内容を表示します。
- vi install.perlbrew.pl
スクリプトの内容に慣れたら、スクリプトをパイプして bash
インストールスクリプトを実行するには:
- cat install.perlbrew.pl | bash
これにより、に新しいディレクトリ構造が作成されます /home/sammy/perl5
、PerlbrewはサポートファイルとPerlのバージョンを保存します。 インストールスクリプトから次の出力が表示されます。
Output## Download the latest perlbrew
## Installing perlbrew
perlbrew is installed: ~/perl5/perlbrew/bin/perlbrew
perlbrew root (~/perl5/perlbrew) is initialized.
Append the following piece of code to the end of your ~/.bash_profile and start a
new shell, perlbrew should be up and fully functional from there:
source ~/perl5/perlbrew/etc/bashrc
Simply run `perlbrew` for usage details.
Happy brewing!
## Installing patchperl
## Done.
次に、 perlbrew
でいくつかの初期構成ファイルとディレクトリを作成するユーティリティ /home/sammy/perl5/perlbrew
:
~/perl5/perlbrew/bin/perlbrew self-install
次の出力が表示されます。
OutputYou are already running the installed perlbrew:
/home/sammy/perl5/perlbrew/bin/perlbrew
これでPerlbrewがインストールされましたが、シェルの構成ファイルを変更して使いやすくする必要があります。
ステップ2–編集 .bash_profile
Perlbrewを含める
Perlbrewを使用してPerlのバージョンをインストールする前に、 .bash_profile
ファイルなので、いくつかの重要なPerlbrew環境変数を自動的に設定します。 Perlbrewは、必要なコードを別の構成ファイルに含めることでこれを簡単にします。 .bash_profile
.
ファイルを開く ~/.bash_profile
エディターで:
- vi ~/.bash_profile
ファイルの最後に次の行を追加して、Perlbrew設定を含めます。
source ~/perl5/perlbrew/etc/bashrc
ファイルを保存して、エディターを終了します。
次に、ログアウトしてから再度ログインして、 .bash_profile
ファイルはPerlbrewの設定をロードします。 これで追加されます /home/sammy/perl5/perlbrew/bin
あなたの前に PATH
環境変数、およびPerlbrewが必要とする他のいくつかの環境変数を設定します。
これらの環境変数が設定されていることを確認するには、 env
コマンドとテキストのgrepを使用した結果のフィルタリング PERL
:
env | grep PERL
次のようなエントリが表示されます。
OutputPERLBREW_BASHRC_VERSION=0.78
PERLBREW_ROOT=/home/sammy/perl5/perlbrew
PERLBREW_HOME=/home/sammy/.perlbrew
これらの環境変数は、重要なディレクトリがどこにあるかをPerlbrewに伝えます。 このチュートリアルの公開後にPerlbrewが改訂された場合、バージョン番号が高くなる可能性があります。
タイピング which perlbrew
これで、へのフルパスを特定する必要があります perlbrew
指図:
which perlbrew
ターミナルに次のように表示されます。
Expected Output~/perl5/perlbrew/bin/perlbrew
Perlbrewがインストールおよび構成されたので、使用を開始しましょう。
ステップ3–Perlバージョンのインストールとビルド。
Perlbrewを使用して、Perl5の安定バージョンをインストールしましょう。 使用 perlbrew
インストールに使用できるPerlバージョンを確認するコマンド:
perlbrew available
次の部分的なリストのようなリストが表示されます。
Partial Listing perl-5.25.11
perl-5.24.1
perl-5.22.3
perl-5.20.3
perl-5.18.4
...
奇数などのメジャーバージョン perl-5.25
、は活発に開発されており、安定しているか、本番環境に対応しているとは見なされません。 一般的に、より古いバージョンは使用しません 5.10.1
これらの古いバージョンのいずれかを必要とするレガシーコードがない限り。
出力によると、 perl-5.24.1
メジャー番号が最大であるため、最新の安定バージョンです。 リストに表示されている任意のPerlバージョンを選択できますが、このチュートリアルでは、インストールします perl-5.24.1
.
でインストール perlbrew install
:
perlbrew install perl-5.24.1
Perlのインストールには、ビルドとインストールにかなりの時間がかかり、通常は約20分かかります。 ビルドプロセスを中断しないでください。 ビルドの進行状況を確認したい場合は、別のターミナルセッションを開いて、ビルドログを監視できます。 tail -f ~/perl5/perlbrew/build.perl-5.24.1.log
.
ビルドが完了すると、Perlbrewから次の出力が表示されます。
[secondary_label Output]
perl-5.24.1 is successfully installed.
ビルドが完了すると、ビルドログファイルの最後の行は次のようになります。
Output
##### Brew Finished #####
インストールするPerlのバージョンごとにこのプロセスを繰り返すことができます。 このガイドでは、1つのバージョンのインストールについてのみ説明しますが、この手順は、必要な数のバージョンに対して繰り返すことができます。
次に、Perlbrewを使用して複数のバージョンのPerlを操作する方法を見てみましょう。
ステップ4–新しいPerlインストールの管理
この時点で、システムには2つのバージョンのPerlがあります。オペレーティングシステムに付属しているベンダーバージョンと、インストールしたばかりのPerlバージョンです。 ~/perl5
Perlbrewのあるディレクトリ。
新しいPerlインストールを使用するには、次のコマンドを実行します。
perlbrew use perl-5.24.1
このコマンドは、 PERLBREW_PERL
現在のログインセッションで指定されたPerlバージョンを指す環境変数。
ログインするたびにPerlのバージョンをデフォルトにしたい場合は、次のコマンドを実行します。
perlbrew switch perl-5.24.1
このコマンドは、 PERLBREW_PERL
ログインするたびに指定されたPerlバージョンを指す環境変数。
現在Perl5.24.1を使用していることを確認します。
perl -V
次の出力が表示されます。
Parial Output...
%ENV:
PERLBREW_BASHRC_VERSION="0.78"
PERLBREW_HOME="/home/sammy/.perlbrew"
PERLBREW_MANPATH="/home/sammy/perl5/perlbrew/perls/perl-5.24.1/man"
PERLBREW_PATH="/home/sammy/perl5/perlbrew/bin:/home/sammy/perl5/perlbrew/perls/perl-5.24.1/bin"
PERLBREW_PERL="perl-5.24.1"
PERLBREW_ROOT="/home/sammy/perl5/perlbrew"
PERLBREW_VERSION="0.78"
@INC:
/home/sammy/perl5/perlbrew/perls/perl-5.24.1/lib/site_perl/5.24.1/x86_64-linux
/home/sammy/perl5/perlbrew/perls/perl-5.24.1/lib/site_perl/5.24.1
/home/sammy/perl5/perlbrew/perls/perl-5.24.1/lib/5.24.1/x86_64-linux
/home/sammy/perl5/perlbrew/perls/perl-5.24.1/lib/5.24.1
.
PerlbrewはコアPerlコードだけをインストールします。 特定のバージョンのPerlのコアを構成するモジュールを確認するには、次のコマンドを実行します。
- corelist -v 5.24.1
使用後いつでも perlbrew use
また perlbrew switch
コマンドを使用すると、コマンドを使用してPerlのベンダーバージョンの使用に戻ることができます perlbrew off
. 使用した場合 perlbrew switch
新しいデフォルトのPerlを設定するには、次のコマンドでそのデフォルト設定を削除できます。 perlbrew switch-off
.
The perlbrew
フラグなしで発行されるコマンドは、役立つコマンドの簡単なリストを生成します。 コマンド perlbrew help
より詳細なヘルプ情報を生成します。
追加のPerlモジュールをいくつかインストールしましょう。
ステップ5–CPANからモジュールをインストールしてPerlインストールをテストする
Perlは、コア言語を拡張する膨大な数のパブリックコードモジュールを提供します。 これらのモジュールは、Comprehensive Perl Archive Network(CPAN)に保存されています。 あなたが書くことを考えているコードは、すでにCPANで書かれ、テストされ、利用可能であるかもしれません。 CPANリポジトリを使用して、車輪の再発明を回避できます。
App :: cpanminus は、CPANリポジトリを探索してモジュールをダウンロードできるPerlモジュールです。 人気があり使いやすいです。 このモジュールをインストールし、それを使用して新しいPerlインストールをテストしてみましょう。
新しいPerlインストールを使用していることを確認してください。
- perlbrew use perl-5.24.1
次のコマンドでcpanminusモジュールをインストールします。
- curl -L https://cpanmin.us | perl - App::cpanminus
次の出力が表示されます。
Output--> Working on App::cpanminus
Fetching http://www.cpan.org/authors/id/M/MI/MIYAGAWA/App-cpanminus-1.7043.tar.gz ... OK
Configuring App-cpanminus-1.7043 ... OK
Building and testing App-cpanminus-1.7043 ... OK
Successfully installed App-cpanminus-1.7043
1 distribution installed
cpanminusモジュールが存在することを確認します。
- perlbrew list-modules
君は見るべきだ App::cpanimus
出力:
OutputApp::cpanminus
Perl
これで、コマンドラインユーティリティを使用できます cpanm
追加のモジュールとその依存関係をインストールします。 それを使ってインストールしましょう Email::Simple
モジュール。これは、電子メールメッセージを送信するためのPerlコードを作成する場合に必要になります。
cpanm Email::Simple
インストールが完了したら、モジュールのリストをもう一度確認します。
perlbrew list-modules
次の出力が表示されます。
Expected OutputApp::cpanminus
Email::Date::Format
Email::Simple
Perl
The Email::Simple
モジュールには Email:Date::Format
モジュール。 The cpanm
プログラムが依存関係をインストールしました。
コアPerlインストールを完了するために何をインストールすればよいかわからない場合は、 Task :: Kensho をご覧ください。これは、本番環境に対応していると見なされる幅広いタスクに対応する多数のモジュールについて説明しています。
結論
このチュートリアルでは、Perlbrewをインストールし、それを使用してローカルバージョンのPerlをホームディレクトリにインストールしました。 また、Perlbrewを使用して複数のバージョンのPerlをインストールおよび管理する方法、およびCPANリポジトリから追加のモジュールをインストールする方法についても学びました。 cpanm
効用。 同じプロセスを使用して異なるバージョンのPerl5をインストールできるため、アプリに必要なバージョンをインストールできます。