パッケージ名がわからなくてもyumでインストールできる場合の紹介
CentOS 5の環境でとある作業をしているときによくある風景に遭遇しました.
いわゆる「依存関係が解決していないからビルドできんぞヴォケ!!」ですね.
$ rpmbuild -ba SPECS/publican.spec エラー: ビルド依存性の失敗: perl(Devel::Cover) は publican-2.8-1.noarch に必要とされています perl(Module::Build) は publican-2.8-1.noarch に必要とされています perl(Test::Exception) は publican-2.8-1.noarch に必要とされています perl(Test::Pod) は publican-2.8-1.noarch に必要とされています perl(Test::Pod::Coverage) は publican-2.8-1.noarch に必要とされています perl(Test::Perl::Critic) は publican-2.8-1.noarch に必要とされています (snip) perl(DBD::SQLite) は publican-2.8-1.noarch に必要とされています liberation-mono-fonts は publican-2.8-1.noarch に必要とされています liberation-sans-fonts は publican-2.8-1.noarch に必要とされています liberation-serif-fonts は publican-2.8-1.noarch に必要とされています cjkuni-uming-fonts は publican-2.8-1.noarch に必要とされています ipa-gothic-fonts は publican-2.8-1.noarch に必要とされています ipa-pgothic-fonts は publican-2.8-1.noarch に必要とされています lklug-fonts は publican-2.8-1.noarch に必要とされています baekmuk-ttf-batang-fonts は publican-2.8-1.noarch に必要とされています
こまった!! 当然作業を続けるなら必要なパッケージを入れましょう.ってことなんですが,「perl(???:???)」的なものはパッケージ名を調べるのが億劫です.そこでふと駄目もとでなんとなく下記のようにそのままyumに渡してみました.
$ sudo yum install 'perl(DBD::SQLite)' Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: ftp.nara.wide.ad.jp * epel: ftp.kddilabs.jp * extras: ftp.nara.wide.ad.jp * updates: ftp.nara.wide.ad.jp Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package perl-DBD-SQLite.x86_64 0:1.14-3.el5 set to be updated --> Processing Dependency: perl(DBI) for package: perl-DBD-SQLite --> Running transaction check ---> Package perl-DBI.x86_64 0:1.52-2.el5 set to be updated --> Finished Dependency Resolution Dependencies Resolved ================================================================================================ Package Arch Version Repository Size ================================================================================================ Installing: perl-DBD-SQLite x86_64 1.14-3.el5 epel 277 k Installing for dependencies: perl-DBI x86_64 1.52-2.el5 base 600 k Transaction Summary ================================================================================================ Install 2 Package(s) Upgrade 0 Package(s) Total download size: 876 k Is this ok [y/N]:
おいおいおいおい!! イケるじゃんお兄さん!!
上記見ていると,perl(???:???)は依存関係の解決でパッケージ名が導き出されています.
ってことでもしかしてこんな手抜きできちゃう!?
LANG=C rpmbuild -ba SPECS/publican.spec 2>&1 | awk '$0 ~ /is needed by/ { print $1}' perl(Devel::Cover) perl(Module::Build) perl(Test::Exception) perl(Test::Pod) perl(Test::Pod::Coverage) perl(Test::Perl::Critic) perl(Archive::Zip) perl(Config::Simple) perl(DateTime) perl(DateTime::Format::DateParse) perl(File::Copy::Recursive) perl(File::Find::Rule) perl(File::pushd) (snip) perl(DBD::SQLite) liberation-mono-fonts liberation-sans-fonts liberation-serif-fonts cjkuni-uming-fonts ipa-gothic-fonts ipa-pgothic-fonts lklug-fonts baekmuk-ttf-batang-fonts
ってことでできちゃいました…!!!!!!
$ sudo yum install `LANG=C rpmbuild -ba SPECS/publican.spec 2>&1 | awk '$0 ~ /is needed by/ { print $1}'` Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: ftp.nara.wide.ad.jp * epel: ftp.kddilabs.jp * extras: ftp.nara.wide.ad.jp * updates: ftp.nara.wide.ad.jp Setting up Install Process Setting up Install Process No package perl(Makefile::Parser) available. Package perl-XML-TreeBuilder-3.09-9.el5.noarch already installed and latest version No package fop available. No package batik available. Package docbook-style-xsl-1.69.1-5.1.noarch already installed and latest version No package liberation-mono-fonts available. No package liberation-sans-fonts available. No package liberation-serif-fonts available. No package cjkuni-uming-fonts available. No package lklug-fonts available. No package baekmuk-ttf-batang-fonts available. Resolving Dependencies --> Running transaction check ---> Package ImageMagick-perl.x86_64 0:6.2.8.0-4.el5_5.3 set to be updated --> Processing Dependency: ImageMagick = 6.2.8.0-4.el5_5.3 for package: ImageMagick-perl --> Processing Dependency: libMagick.so.10()(64bit) for package: ImageMagick-perl ---> Package ipa-gothic-fonts.noarch 0:003.02-3.1.el5 set to be updated ---> Package ipa-pgothic-fonts.noarch 0:003.02-3.1.el5 set to be updated ---> Package perl-Archive-Zip.noarch 0:1.16-1.2.1 set to be updated ---> Package perl-Config-Simple.noarch 0:4.59-7.el5 set to be updated ---> Package perl-DBD-SQLite.x86_64 0:1.14-3.el5 set to be updated --> Processing Dependency: perl(DBI) for package: perl-DBD-SQLite ---> Package perl-DateTime.x86_64 1:0.41-1.el5 set to be updated --> Processing Dependency: perl(Class::Singleton) >= 1.03 for package: perl-DateTime --> Processing Dependency: perl(Params::Validate) >= 0.76 for package: perl-DateTime --> Processing Dependency: perl(Params::Validate) for package: perl-DateTime --> Processing Dependency: perl(Class::Singleton) for package: perl-DateTime ---> Package perl-DateTime-Format-DateParse.noarch 0:0.04-6.el5 set to be updated (snip) --> Finished Dependency Resolution Dependencies Resolved ================================================================================================ Package Arch Version Repository Size ================================================================================================ Installing: ImageMagick-perl x86_64 6.2.8.0-4.el5_5.3 base 147 k ipa-gothic-fonts noarch 003.02-3.1.el5 base 4.1 M ipa-pgothic-fonts noarch 003.02-3.1.el5 base 4.1 M (snip) perl-Algorithm-Diff noarch 1.1902-2.el5 epel 45 k perl-AppConfig noarch 1.64-1.el5 epel 96 k perl-B-Keywords noarch 1.06-1.el5 epel 9.6 k perl-Class-Singleton noarch 1.03-3.el5 epel 17 k perl-Clone x86_64 0.27-1.el5 epel 14 k perl-Config-Tiny noarch 2.10-1.el5 epel 21 k perl-DBI x86_64 1.52-2.el5 base 600 k perl-Devel-Symdump noarch 1:2.07-3.el5.1 epel 16 k perl-ExtUtils-CBuilder noarch 0.18-1.el5 epel 28 k perl-ExtUtils-ParseXS noarch 2.18-1.el5 epel 31 k perl-File-HomeDir noarch 0.62-1.el5 epel 40 k perl-Font-AFM noarch 1.19-4.el5 epel 18 k perl-IO-String noarch 1.08-1.1.1 base 13 k perl-List-MoreUtils x86_64 0.22-2.el5 epel 59 k perl-Module-Pluggable noarch 3.60-3.el5 epel 23 k perl-Number-Compare noarch 0.01-8.el5 epel 7.6 k perl-PPI noarch 1.118-1.el5 epel 371 k perl-Params-Util noarch 0.25-1.el5 epel 24 k perl-Params-Validate x86_64 0.88-3.el5 epel 71 k perl-Perl-Critic noarch 1.05-1.el5 epel 514 k perl-Pod-Coverage noarch 0.18-2.el5 epel 25 k perl-Pod-Escapes noarch 1.04-5.el5 epel 15 k perl-Pod-POM noarch 0.17-6.el5 epel 57 k perl-Pod-Simple noarch 3.04-3.el5 epel 184 k perl-String-Format noarch 1.14-1.el5 epel 10 k perl-Sub-Uplevel noarch 0.18-2.el5 epel 13 k perl-TeX-Hyphen noarch 0.140-5.el5 epel 33 k perl-Test-Differences noarch 0.47-2.el5 epel 16 k (snip) Transaction Summary ================================================================================================ Install 76 Package(s) Upgrade 0 Package(s) Total download size: 34 M Is this ok [y/N]: y Downloading Packages: (1/76): perl-Number-Compare-0.01-8.el5.noarch.rpm | 7.6 kB 00:00 (2/76): perl-Text-Glob-0.08-2.el5.noarch.rpm | 8.9 kB 00:00 (3/76): perl-B-Keywords-1.06-1.el5.noarch.rpm | 9.6 kB 00:00 (73/76): ipa-gothic-fonts-003.02-3.1.el5.noarch.rpm | 4.1 MB 00:00 (74/76): ipa-pgothic-fonts-003.02-3.1.el5.noarch.rpm | 4.1 MB 00:00 (75/76): urw-fonts-2.3-6.1.1.noarch.rpm | 4.5 MB 00:00 (76/76): ghostscript-8.70-6.el5_7.3.x86_64.rpm | 8.9 MB 00:01 ------------------------------------------------------------------------------------------------ Total 4.9 MB/s | 34 MB 00:06 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : perl-List-MoreUtils 1/76 Installing : perl-Clone 2/76 Installing : perl-Params-Validate 3/76 (snip) Dependency Installed: ImageMagick.x86_64 0:6.2.8.0-4.el5_5.3 gd.x86_64 0:2.0.33-9.4.el5_4.2 ghostscript.x86_64 0:8.70-6.el5_7.3 ghostscript-fonts.noarch 0:5.50-13.1.1 libcroco.x86_64 0:0.6.1-2.1 libgsf.x86_64 0:1.14.1-6.1 librsvg2.x86_64 0:2.16.1-1.el5 libwmf.x86_64 0:0.2.8.4-10.2 perl-Algorithm-Diff.noarch 0:1.1902-2.el5 perl-AppConfig.noarch 0:1.64-1.el5 perl-B-Keywords.noarch 0:1.06-1.el5 perl-Class-Singleton.noarch 0:1.03-3.el5 perl-Clone.x86_64 0:0.27-1.el5 perl-Config-Tiny.noarch 0:2.10-1.el5 perl-DBI.x86_64 0:1.52-2.el5 perl-Devel-Symdump.noarch 1:2.07-3.el5.1 perl-ExtUtils-CBuilder.noarch 0:0.18-1.el5 perl-ExtUtils-ParseXS.noarch 0:2.18-1.el5 perl-File-HomeDir.noarch 0:0.62-1.el5 perl-Font-AFM.noarch 0:1.19-4.el5 perl-IO-String.noarch 0:1.08-1.1.1 perl-List-MoreUtils.x86_64 0:0.22-2.el5 perl-Module-Pluggable.noarch 0:3.60-3.el5 perl-Number-Compare.noarch 0:0.01-8.el5 perl-PPI.noarch 0:1.118-1.el5 perl-Params-Util.noarch 0:0.25-1.el5 perl-Params-Validate.x86_64 0:0.88-3.el5 perl-Perl-Critic.noarch 0:1.05-1.el5 perl-Pod-Coverage.noarch 0:0.18-2.el5 perl-Pod-Escapes.noarch 0:1.04-5.el5 perl-Pod-POM.noarch 0:0.17-6.el5 perl-Pod-Simple.noarch 0:3.04-3.el5 perl-String-Format.noarch 0:1.14-1.el5 perl-Sub-Uplevel.noarch 0:0.18-2.el5 perl-TeX-Hyphen.noarch 0:0.140-5.el5 perl-Test-Differences.noarch 0:0.47-2.el5 perl-Text-Autoformat.noarch 0:1.13-5.el5 perl-Text-Diff.noarch 0:0.35-3.el5 perl-Text-Glob.noarch 0:0.08-2.el5 perl-Text-Reform.noarch 0:1.11-6.el5 perl-TimeDate.noarch 1:1.16-5.el5 perl-XML-Dumper.noarch 0:0.81-2.fc6 perl-XML-LibXML-Common.x86_64 0:0.13-8.2.2 perl-XML-NamespaceSupport.noarch 0:1.09-1.2.1 perl-XML-SAX.noarch 0:0.14-8 perl-XML-TokeParser.noarch 0:0.05-2.1.el5 perltidy.noarch 0:20070801-1.el5 urw-fonts.noarch 0:2.3-6.1.1 Complete!
ダラダラと長くてすみません.さて,今回のオチですが…
実は例が悪く,よく見ると「パッケージがあらへん」といっているものがあるように,現状のyumリポジトリーだけでは解決できないようです(ぇー
#CentOS 5系 w/ EPELだけでは本家から落としたpublican 2.8はビルドできないみたい(ハァ
また書く気になったらちゃんと一連の流れで成功するパターンでも書き直したいと思います.
では.あでゅー