pacoを導入
yumのレポジトリからインストールするのに何かと不都合のあるケースがあり、たとえばPHPはどうしてもソースからビルドしたいのだが、ソースからインストールしたプログラムを管理する方法がなく、今まではmake installの結果を保存するなどしていた。しかしpacKAGE oRGANIZER略してpacoの存在をこの秀逸なエントリで知ったので、これは便利とさっそく導入した。
手元のCentOS 4.7ではgtkmmの2.12から2.4までが必要といわれる。
configure: error: Package requirements (gtkmm-2.4 >= 2.12) were not met:
yumで検索するとkbs-ContOS-Extrasにgtkmm20と24が見つかったのでとりあえず24をインストール。そしたらやはりだめで今度は
checking for GTKMM... Requested 'gtkmm-2.4 >= 2.12' but version of gtkmm is 2.4.11 configure: error: Package requirements (gtkmm-2.4 >= 2.12) were not met:
と怒られる。いったんremoveして考える。で、激怒しそうになってもう一度yum list gtkmm*の結果をみると、gtkmm20のバージョンは2.212-1になっているではないか。じゃあgtkmm22にしてくれよと思わないでもないが、まあ歴史的経緯というやつがあるのだろう。気を取り直してgtkmm20とgtkmm-develを入れてみた。が、やっぱりうまくいかない。
でも、READMEを読み返すとgtkmmはGUIインタフェース用とのことなので、サーバでは使わないだろうから
$ ./configure --disable-gpaco $ make $ make install
で十分なことに気づいた。探究終わり。それから、件の記事にもある通り、paco自体を管理するために
$ make logme
これでインストール完了。さっそく試しに何かやってみよう、というわけで標的になったのはREXMLのDoS攻撃に対する脆弱性のことはとりあえず無視してRuby-1.8.7-p72。普通にディレクトリを移動してconfigureしてmakeしたら
[root@selfkleptomaniac.org ruby-1.8.7-p72] # paco -D make install
で完了。
pacoはLD_PRELOADを使ってwrite(?)か何かのシステムコールをフックしているとのことなので、そういえば似たようなネタを読んだことがあるなあと思った次第。
Comments
[…] パッケージ名なんだろう、とGoogle様にお伺いしているとSelfkleptomaniacさんの記事を発見。gtkmmはGUIインタフェース用とのことなのでオプションでdisableする。 […]
[…] gtkmm-2.4がない模様だ。調べてみると、GUIインタフェース用らしいので要らないらしい。 pacoを導入 というわけで、–disableにして再度configureしインストールする。 […]
[…] pacoを導入 | Selfkleptomaniac […]