開発者ドキュメント

CentOS7でPerlbrewをインストールして複数のバージョンのPerl5を管理する方法

序章

Perl 5 は、成熟したフル機能のプログラミング言語です。 これは、世界中のミッションクリティカルなビジネスシステムを含む、あらゆるタイプの生産プロジェクトで使用されています。 Perlbrew ソフトウェアパッケージを使用すると、Perl 5プログラミング言語のバージョンをインストール、削除、および切り替えることができます。

PerlbrewはホームディレクトリにPerlをインストールし、インストールするPerlの各バージョンは他のバージョンから独立しています。 これにより、他のバージョンに干渉したり、影響を受けたりすることなく、複数のPerlバージョンに対してコードをテストできます。 これには、オペレーティングシステムのデフォルトのPerlパッケージが含まれます。これは通常、最新の安定バージョンよりもはるかに古いものです。

このチュートリアルでは、Perlbrewをインストールし、それを使用してPerl5のバージョンをインストールしてテストします。

前提条件

このガイドに従うには、次のものが必要です。

ステップ1-Perlbrewをインストールする

Perlbrewをインストールする前に、いくつかの前提条件パッケージが必要です。 Perlbrewのニーズ gcc、コンパイラ、および bzip2、Perlをコンパイルしてインストールするための圧縮ユーティリティ。 これらのパッケージはデフォルトではCentOS7にインストールされていませんが、サーバーにいくつかのパッケージを追加している場合は、これら2つのパッケージがすでにインストールされている可能性があります。 足りないものを簡単に見つけることができます。

注:次の例に表示されるパッケージのバージョン番号は、これらのパッケージが定期的に改訂されているため、このガイドに示されている番号よりも大きい場合があります。

Perlのビルドには、2つのgcc関連パッケージが必要です。 libgccgcc. これらのパッケージがすでにあるかどうかを確認するには、次のコマンドを実行します。

  1. 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-libsbzip2 パッケージ。 それらもインストールされていることを確認してください。

  1. 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 パッケージ:

  1. sudo yum install bzip2

最後に、 patch 効用。

  1. sudo yum install patch

前提条件が整ったら、Perlbrewをインストールできます。 インストールスクリプトをサーバーにダウンロードします。

  1. curl -L https://install.perlbrew.pl -o install.perlbrew.pl

スクリプトを実行する前にスクリプトの内容を監査するには、スクリプトをテキストエディターで開いて、その内容を表示します。

  1. vi install.perlbrew.pl

スクリプトの内容に慣れたら、スクリプトをパイプして bash インストールスクリプトを実行するには:

  1. 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

次の出力が表示されます。

Output
You 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 エディターで:

  1. 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                                                                                                                  

次のようなエントリが表示されます。

Output
PERLBREW_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のコアを構成するモジュールを確認するには、次のコマンドを実行します。

  1. 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インストールを使用していることを確認してください。

  1. perlbrew use perl-5.24.1

次のコマンドでcpanminusモジュールをインストールします。

  1. 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モジュールが存在することを確認します。

  1. perlbrew list-modules

君は見るべきだ App::cpanimus 出力:

Output
App::cpanminus Perl

これで、コマンドラインユーティリティを使用できます cpanm 追加のモジュールとその依存関係をインストールします。 それを使ってインストールしましょう Email::Simple モジュール。これは、電子メールメッセージを送信するためのPerlコードを作成する場合に必要になります。

cpanm Email::Simple

インストールが完了したら、モジュールのリストをもう一度確認します。

perlbrew list-modules

次の出力が表示されます。

Expected Output
App::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をインストールできるため、アプリに必要なバージョンをインストールできます。

モバイルバージョンを終了