cpan2rpmでのインストール時エラーの対処方法
こちらのサイトを参考にさせてもらいながらcpan2rpmでインストールしたけどいくつか問題があったので対処方法をメモ。
『Perlモジュールパッケージ管理システム導入(cpan2rpm)』
ちなみに、CentOS5.5でcpan2rpmのバージョンは2.028-1。
まず普通にインストールしようとしてみる。
# cpan2rpm --install URI::Find
すると以下のエラー。
-- cpan2rpm - Ver: 2.028 -- Upgrade check Fetch: HTTP -- module: URI::Find -- Using cached URL: http://search.cpan.org//CPAN/authors/id/M/MS/MSCHWERN/URI-Find-20100505.tar.gz Tarball found - not fetching Metadata retrieval Tarball extraction: [/usr/src/redhat/SOURCES/URI-Find-20100505.tar.gz] Module::Build unloadable Can't locate Module/Build.pm in @INC (@INC contains: /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/5.8.8 .) at (eval 22) line 2. BEGIN failed--compilation aborted at (eval 22) line 2. -- Done --
なんか、「Module::Build unloadable」って言われてるので、perl-Module-Buildを入れてみる。
rpmforgeをyumに登録してあれば以下のコマンドでOK
# yum install perl-Module-Build
再度インストールしようとしてみる。
# cpan2rpm --install URI::Find
また、エラー。
-- cpan2rpm - Ver: 2.028 -- Upgrade check Fetch: HTTP -- module: URI::Find -- Using cached URL: http://search.cpan.org//CPAN/authors/id/M/MS/MSCHWERN/URI-Find-20100505.tar.gz Tarball found - not fetching Metadata retrieval Tarball extraction: [/usr/src/redhat/SOURCES/URI-Find-20100505.tar.gz] No version found, please use --version option. Stopped at /usr/bin/cpan2rpm line 580. -- Done --
「please use --version option」って言われてるので試してみる。
# cpan2rpm --version 20100505 URI::Find
またまたエラー。
-- cpan2rpm - Ver: 2.028 -- Upgrade check Fetch: HTTP -- module: URI::Find -- Using cached URL: http://search.cpan.org//CPAN/authors/id/M/MS/MSCHWERN/URI-Find-20100505.tar.gz Tarball found - not fetching Metadata retrieval Tarball extraction: [/usr/src/redhat/SOURCES/URI-Find-20100505.tar.gz] Generating spec file SPEC: /usr/src/redhat/SPECS/URI-Find.spec Generating package Signing package (pass phrase required) エラー: マクロファイル内で "%_gpg_name" を設定しなければなりません。 パスフレーズのチェックに失敗しました。 RPM build failed [1] at /usr/bin/cpan2rpm line 1052. -- Done --
根本解決にはなってないかもしれないけど、とりあえず--no-signオプションをつけてみる。
# cpan2rpm --version 20100505 --no-sign URI::Find
ようやくインストール成功!