web-dev-qa-db-ja.com

DebianシステムでPerlモジュールをどのように管理しますか?

次の点に関して、DebianシステムでPerlモジュールを管理する方法があるかどうか知りたいのですが。

  1. 新しいモジュールのインストール
  2. 手動でインストールされたモジュールのリスト
  3. 依存関係の確認とモジュールのアンインストール

私は背景を読むためにこのperlmonksの記事を見てきました: DebianにCPANモジュールをインストールする最良の方法は何ですか?

以前、CPANモジュールを使用してPerlモジュールをインストールしました。また、Perlに依存する他のパッケージをビルドするための指示に従うときに、dh-make-Perlを使用することもありました。

モジュールのインストール方法とインストール場所をより適切に管理し、システムでPerlが破損する可能性を減らすために、マシンに一貫したポリシーを設定したいと思います。使用されなくなったモジュールを検出してアンインストールできるシステムが欲しいです。

7
user4358

すべてのパッケージにapt-getdh-make-Perlを使用すると、deborphan --guess-Perlは依存関係のないPerlパッケージを検索し、それを削除して繰り返し実行できます。 deborphanには、アクティブに使用しているものを追加できるキープリストがあり、それらは表示されません。

したがって、これを機能させるには、CPANを介してインストールしたすべてのモジュールをアンインストールし、dh-make-Perlを使用して再インストールする必要があります。手動でインストールされたモジュールは、apt-show-versions libsome-module-Perlの出力で「アーカイブに利用可能なバージョンがありません」を探すことで検出できます。

5
TRS-80

ほとんどのモジュールをインストールするためにapt-getを使用します。モジュールがリポジトリの1つにない場合(またはモジュールの新しいバージョンが必要な場合)、そのモジュールをcpanを使用してホームディレクトリにインストールします。これは local::lib モジュールによって簡単になります。 CPANからtarballをダウンロードして解凍し、ディレクトリを変更して、次のように入力します。

Perl Makefile.pl --bootstrap
make
make test

これらの手順のいずれかが失敗した場合は、ここで質問してください。すべての手順が成功した場合は、次のように入力します

make install

次に、使用するプロファイルファイルに次の行を追加する必要があります(例:~/.profile~/.bash_profileなど)。

eval $(Perl -I$HOME/Perl5/lib/Perl5 -Mlocal::lib)

ログアウトして再度ログインし(現在のターミナルでそのコマンドを実行)、次のように入力します

cpan

CPANを自動構成するかどうかを尋ねられたら、「はい」と答えます。完了すると、~/Perl5という名前のディレクトリにモジュールをインストールできるようになります。

cpan Module::Name

プロファイルに入力した行でPerl5LIB変数が設定されるため、プログラムはインストールしたモジュールを見つけることができます。 ~/Perl5ディレクトリがシステムディレクトリの前に配置されるため、バージョン1.0のFooがapt-get経由でインストールされ、バージョン2.0のFooがCPAN経由でインストールされている場合、CPANバージョンがロードされます。

5
Chas. Owens

DebianのPerlをそのままにして、cpanで管理する2番目のPerlをインストールします。

https://stackoverflow.com/questions/398221/how-do-you-manage-Perl-modules-on-linux

3
innaM

モジュールによっては、apt-getコマンドを使用してより一般的なモジュールのいくつかをインストールできると確信しています。

apt-get install Perl5-crypt(多分そのp5-crypt-しばらく経ちました)。

必要なモジュールに大きく依存しますが、それらの多くはaptパッケージに含まれていません。

1
Ben Short