rpm作成時の小ネタ (yum-builddep)
欲しいrpmが無かったりバージョンが古かったりするときにrpmを自前で作成する場合、こういうことがあるかと思います。
rpmbuild --rebuild foovar-0.0.1.src.rpm
error: Failed build dependencies:
bzip2-devel is needed by foovar-0.0.1.i386
sqlite2-devel >= 2.8.0 is needed by foovar-0.0.1.i386
libedit-devel is needed by foovar-0.0.1.i386
libtool-ltdl-devel is needed by foovar-0.0.1.i386
libc-client-devel is needed by foovar-0.0.1.i386
mysql-devel >= 4.1.0 is needed by foovar-0.0.1.i386
unixODBC-devel is needed by foovar-0.0.1.i386
net-snmp-devel is needed by foovar-0.0.1.i386
libxslt-devel >= 1.0.18-1 is needed by foovar-0.0.1.i386
libjpeg-devel is needed by foovar-0.0.1.i386
xorg-x11-devel is needed by foovar-0.0.1.i386
libmcrypt-devel is needed by foovar-0.0.1.i386
libtidy-devel is needed by foovar-0.0.1.i386
freetds-devel is needed by foovar-0.0.1.i386
aspell-devel >= 0.50.0 is needed by foovar-0.0.1.i386
recode-devel is needed by foovar-0.0.1.i386
libicu-devel >= 3.6 is needed by foovar-0.0.1.i386</code></pre>
specファイルに記述された BuildRequires 依存パッケージの嵐!こういう時素直に
sudo yum install bzip2-devel sqlite2-devel libedit-devel libtool-ltdl-devel
でもいいんだけど、すごくめんどくさい。
そんなときに便利な yum-builddep 。 yum-utils というツール郡の中の一つです。
入っていなければインストール。
sudo yum install yum-utils
たとえば foovar-0.0.1.src.rpm というSRPMがあって、それが BuildRequires している依存パッケージをインストールするのが、下の1コマンドで完了します。
sudo yum-builddep foovar-0.0.1.src.rpm
他にも yum-utils はその名のごとく色々な便利ツールを含んでいるのですが、それはまた別で調べようかと思います。