次のエラーが表示されます。
Can't locate Foo.pm in @INC
ダウンロード、解凍、作成などよりも簡単にインストールする方法はありますか?
次のエラーが表示されます。
Can't locate Foo.pm in @INC
ダウンロード、解凍、作成などよりも簡単にインストールする方法はありますか?
Unix の場合:
通常、シェルでcpanを起動します。
$ cpan
とタイプ
install Chocolate::Belgian
または短い形式で:
cpan Chocolate::Belgian
Windows の場合:
Windows で ActivePerl を使用している場合、PPM (Perl Package Manager)には CPAN.pm とほとんど同じ機能があります。
例:
$ ppm
ppm> search net-smtp
ppm> install Net-SMTP-Multipart
Perl モジュールのインストール方法を参照してください。CPAN FAQ で
多くのディストリビューションは、多くの perl モジュールをパッケージとして出荷しています。
apt-cache search 'perl$'
pacman -Ss '^perl-'
dev-perl
自動 (セキュリティ)更新と削除の容易さの恩恵を受けるため、常にそれらを優先する必要があります。これは、 cpanツール自体では非常に扱いにくい場合があります。
Gentoo には、CPAN からモジュールをビルド/インストールし、Gentoo パッケージ ( ebuild ) を作成するg-cpanという便利なツールがあります。
App::cpanminus を試してください:
# cpanm Chocolate::Belgian
ものをインストールするのに最適です。CPAN や CPANPLUS ほど複雑な機能は提供しないため、インストールするモジュールがわかっている場合は簡単に使用できます。まだ cpanminus を取得していない場合は、次のように入力します。
# cpan App::cpanminus
インストールします。
cpan をまったく使わずにインストールすることも可能です。基本的なブートストラップ手順は、
curl -L http://cpanmin.us | perl - --sudo App::cpanminus
詳細については、App::cpanminus ページに移動し、インストールに関するセクションを参照してください。
sudoの下でcpanを実行することを提案している人もいます。以前はシステムディレクトリにインストールする必要がありましたが、最新バージョンのCPANシェルでは、インストールのためだけにsudoを使用するように構成できます。これは、テストがrootとして実行されないことを意味するため、はるかに安全です。
古いCPANシェルがある場合は、新しいcpanをインストールする(「CPANをインストールする」)だけで、シェルをリロードすると、これらの新しいディレクティブを構成するように求められます。
現在、古いCPANを使用しているシステムを使用している場合、最初に行うことは、シェルを更新して、これを実行するように設定することです。これにより、ほとんどのcpan作業を通常のユーザーとして実行できます。
また、WindowsユーザーはストロベリーPerlを調査することを強くお勧めします。これは、事前構成されたCPANシェルとコンパイラーがパッケージ化されたバージョンのPerlです。また、外部Cライブラリの依存関係を持つコンパイルが難しいPerlモジュール、特にXML::Parserも含まれています。これは、モジュールのインストールに関しては、他のすべてのPerlユーザーと同じことを実行できることを意味し、物事はより頻繁に「正常に機能する」傾向があります。
Ubuntu を使用していて、事前にパッケージ化された perl モジュール (geo::ipfree など) をインストールする場合は、次のようにしてください。
$ apt-cache search perl geo::ipfree libgeo-ipfree-perl - IP アドレスの国を検索する Perl モジュール $ sudo apt-get install libgeo-ipfree-perl
何人かの人々がcpanユーティリティについて言及しましたが、それは単にシェルを開始するだけではありません。インストールしたいモジュールを与えて、それが機能するようにします。
$prompt> cpan Foo::Bar
引数を指定しないと、CPAN.pmシェルが起動します。これはUnix、Macで機能し、Windows(特にStrawberry Perl)では問題ないはずです。
cpanツールでできることは他にもいくつかあります。現在の機能の概要は次のとおりです(CPAN.pmおよびperlに付属している機能よりも新しい場合があります)。
-a
Creates the CPAN.pm autobundle with CPAN::Shell->autobundle.
-A module [ module ... ]
Shows the primary maintainers for the specified modules
-C module [ module ... ]
Show the Changes files for the specified modules
-D module [ module ... ]
Show the module details. This prints one line for each out-of-date module (meaning,
modules locally installed but have newer versions on CPAN). Each line has three columns:
module name, local version, and CPAN version.
-L author [ author ... ]
List the modules by the specified authors.
-h
Prints a help message.
-O
Show the out-of-date modules.
-r
Recompiles dynamically loaded modules with CPAN::Shell->recompile.
-v
Print the script version and CPAN.pm version.
sudo perl -MCPAN -e 'install Foo'
Yes, even you can use CPAN も参照してください。root または sudo アクセスなしで CPAN を使用する方法を示します。
オットーは良い提案をしました。これはDebianだけでなく、他のDebian派生物でも機能します。足りない部分は、apt-cache検索で何かが見つからない場合の対処方法です。
$ sudo apt-get install dh-make-perl build-essential apt-file
$ sudo apt-file update
次に、インストールしたいランダムモジュールがあるときはいつでも:
$ cd ~/some/path
$ dh-make-perl --build --cpan Some::Random::Module
$ sudo dpkg -i libsome-random-module-perl-0.01-1_i386.deb
これにより、Some :: Random::Moduleを取得するためにインストールできるdebパッケージが提供されます。ここでの大きな利点の1つは、モジュール自体に加えて、マニュアルページとサンプルスクリプトがディストリビューションの選択した場所に配置されることです。ディストリビューションにSome::Random :: Moduleの新しいバージョンの公式パッケージが付属している場合は、apt-getupgrade時に自動的にインストールされます。
すでに回答し、回答を受け入れました-しかしとにかく:
私見では、CPANモジュールをインストールする最も簡単な方法(UNIXライクなシステムで、驚異についてはわかりません)は次のとおりです。
curl -L http://cpanmin.us | perl - --sudo App::cpanminus
上記は、と呼ばれる「ゼロ構成CPANモジュールインストーラー」をインストールしていますcpanm
。(インストールには数分かかる場合があります-プロセスを中断しないでください)
そして後-単に:
cpanm Foo
cpanm Module::One
cpanm Another::Module
の推奨事項がたくさんありCPAN.pm
ますが、これは素晴らしいことですが、使用している場合は、より優れたものPerl 5.10
にアクセスすることもできます。CPANPLUS.pm
CPAN.pm
そしてもちろん、CPAN
まだ古いバージョンの Perl を使用しているユーザーも利用できます。試してみませんか:
$ cpan CPANPLUS
多くの場合、cpan install コマンドが失敗し、 「make test が悪いステータスを返しました。強制しないとインストールできません」などのメッセージが表示されます。
その場合、モジュールをインストールする方法は次のとおりです。
perl -MCPAN -e "CPAN::Shell->force(qw(install Foo::Bar));"
cpan コマンドを次のように使用します。cpan Modulename
$ cpan HTML::Parser
依存関係を自動的にインストールするには、以下に従ってください
$ perl -MCPAN -e shell
cpan[1]> o conf prerequisites_policy follow
cpan[2]> o conf commit
exit
私はApp::cpanminusを好みます。依存関係が自動的にインストールされます。やるだけ
$ cpanm HTML::Parser
ubuntuでは、ほとんどのperlモジュールがすでにパッケージ化されているため、コンパイルが必要な他のほとんどのシステムよりもインストールがはるかに高速です。
たとえば、コマンドプロンプトでインストールするFoo::Bar
には、通常、次のようにします。
sudo apt-get install libfoo-bar-perl
残念ながら、すべてのモジュールがその命名規則に従っているわけではありません。
それでも動作するはずです:
cpan -i module_name
私が知っている2つの方法:
PPM の使用:
Windows (ActivePerl) では ppm を使用しました
コマンドラインから ppm と入力します。ppmプロンプトで...
ppm> install foo
また
ppm> search foo
利用可能な foo モジュールのリストを取得します。すべてのコマンドに対してhelpと入力します
CPAN の使用:
次のように CPAN を使用することもできます ( *nix systems ):
perl -MCPAN -e 'shell'
プロンプトを表示します
cpan>
プロンプトで...
cpan> install foo (again to install the foo module)
h と入力して、cpan のコマンドのリストを取得します。
Fedoraでは、使用できます
# yum install foo
Fedora にモジュール用の既存のパッケージがある限り。
yum search foo
を使用して関連する perl モジュールを検索し、 を使用yum install xxx
してインストールできる場合があります。
Perl の ActiveState ディストリビューションを使用する Windows では、ppmコマンドを使用します。