rpmで依存するライブラリが含まれるパッケージをYumで検索する


Yumはなにも考えなくても依存関係を綺麗に調整してくれるから、便利だと思う。
しかしながら、どうしてもrpmパッケージをインストールしたいことは多々ある。

先日、rpmのインストールをしようとした所、下記依存関係のエラーが出た。

libssl.so.6()(64bit) is needed by HOGEHOGE

ありがちなエラーである。
さて、みなさんはこんなエラーが出たらどうするだろうか。
私は、今までこのようなエラーが出たら、ググッて解決していた。
先人のみなさんがブログなどに必ず残していてくれるから、まずまず解決できることが殆どだった。
しかしながら、たまたま色々調べていたらこんな記事を見つけた。

なんと、依存するライブラリをYum検索できるらしいのだ。ねぇみんな知ってた? 知ってるって? あぁそうでしたか…。

試しに上記ライブラリを検索してみた。

[vagrant@test vagrant]$ yum whatprovides libcrypto.so.6
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.tsukuba.wide.ad.jp
 * epel: ftp.kddilabs.jp
 * extras: ftp.tsukuba.wide.ad.jp
 * updates: ftp.tsukuba.wide.ad.jp
openssl098e-0.9.8e-20.el6.centos.1.i686 : A compatibility version of a general cryptography and TLS library
Repo        : base
Matched from:
Other       : libcrypto.so.6

おおぅ!ちゃんと出てくるではないか。。

ブログにもある通り、検索対象は/etc/yum.repos.d/配下のリポジトリなので、野良rpmはヒットしない。
だけど、標準のリポジトリ内のパッケージであればこのように検索出来るようだ。

今まで幾度と無くrpmパッケージをインストールしてきては、怒られたら地道にググッて依存関係を解決していたのだけど、今後はもう少し時間を短縮できそうだ。
ブログを書かれた方には感謝したい。

まだまだ知らないオプションは沢山ありそうだから、たまにはmanコマンドを眺めて知らないオプションを使ってみることにしよう。