Linuxを使っていて、プログラムを起動しようとしたとき
cannot open libhoge.so.3
とか言われて起動できないことがある。
共有ライブラリが入っていないから起動できないよと言うエラーであるが、このライブラリが libhoge パッケージに入っているなら
yum install libhoge
で済むわけだけど、全然違う piyo.noarch とかに入っていると名前から推測できない。
そんなとき、パッケージが提供してくれるファイル名を探すコマンドがある。
yum whatprovides */libhoge.so.3
みたいに、whatprovidesと言うコマンドである。
ワイルドカードで
yum whatprovides */libhoge.*
みたいな検索も出来る。
全てyumで管理していると、通常は依存パッケージを自動で入れてくれるけど、パッケージが無くてソースビルドしようとするとライブラリ無いよメッセージは良く発生するので覚えておくと便利だろう。
(303)