FedoraにおいてPerlを勉強してみる
CPANについて
Perl において、既にある他の開発者が作ったモジュールを取得・利用する機構としてCPANというものが使われている。
CPANを使えば、他の開発者が作成した現状自分でもっていない機能などを追加することができる。
ただし、CPANで取得したモジュールと、パッケージの依存関係を管理するため、
CPANで取得管理するのではなく *cpan2rpm* を使ってcpanで取得するモジュールをパッケージにして追加できる。
cpan2rpm の利用方法
エラー発生時のケーススタディー
cpan2rpm の利用方法について 各環境にもよるが それ通りに行かなかった点について
"%_gpg_name"でエラー発生
エラー: マクロファイル内で "%_gpg_name" を設定しなければなりません。
��3669 cpan2rpmでGeo::IPfree - Web Patio - Fedoraで自宅サーバー構築
パスフレーズのチェックに失敗しました。
上記のエラーが発生した場合には、cpan2rpm パラメータとして 「--no-sign」を付けて実行してみる
module導入時に試験エラーの発生
根本的な解決方法ではないかもしれないが、cpan2rpm パラメータとして 「--make-no-test」を付けて実行してみる
cpan2rpm 利用時に発生するパッケージ依存
module インストール時に 以下のエラー文言が発生した場合には、そもそも rpm-buildパッケージが欠如しているおそれがあります。
>エラー: 依存性の欠如:
��598 Perlモジュールパッケージ管理システム導入 - Web Patio - CentOSで自宅サーバー構築
> rpm-build は cpan2rpm-2.027-1.noarch に必要とされています
そのため、
Fedoraインストール時のRPMパッケージインストール単位である「パッケージグループ」でRPMパッケージをインストールする
$ yum grouplist $ yum -y groupinstall "開発ツール"
依存関係の解決
感想
fedoraでCPANを利用するためには、様々な手段がある*1が結局は依存関係(パッケージとの依存関係?)を気にするよりは
、導入のしやすさや更新のしやすさを考えると、CPANから直接操作した方がはやいのではという意見。
ただし、モジュールをいろいろといれる場合には、依存関係が壊れた時が大変らしい。
皆さんが採用している CPAN の適切な管理方法を教えてください。… - 人力検索はてな
うーん。いろいろと、めんどくさい。
*1:いろいろありすぎる感