Ikeda->Weblog();HOMEこのブログについてご意見箱Ikeda->Weblog();Ikedaの徒然雑記。64bitにcheckinstallをインストールするさー、また3ヶ月が経過してましたね。いかんなぁ(-ω-;;)ということで久々のエントリは「checkinstall」ネタです。今回、サーバ6台を同時にセットアップしなければならなくなり「checkinstall」というツールを試してみたんですが、残念ながらそのままでは上手く動いてくれませんでした。その対応をメモ的にご紹介しますね。checkinstallとはRHELやFedora、CentOS等でソフトウェアをインストールする時に重宝するのがRPMと呼ばれる「パッケージ」です。それぞれのOSや環境に合わせてソフトウェアのコンフィギュレーションやパッチ当てが行われており、かつソフトウェア同士の依存関係も管理されているためコマンド(ほぼ)一発で欲しいソフトウェアをセットアップすることができます。RPMパッケージはメンテナと呼ばれる作者が適宜アップデートを行なっており、インストール済みソフトウェアのアップデートもコマンド一発。楽ちんです^^ただ、「俺はこういうconfigureオプションでインストールしたいんだ!」「最新版のRPMがまだ出てなーいっ!」という場合には「tarball」と呼ばれるアーカイブから手動でコンパイル・インストールすることが多々あります。確かに最新版を追えますし細かい設定も思いのままなんですが、こうなるとバージョン管理が面倒です。それに、複数のサーバに同じ設定でセットアップしたい、なんて時でも基本的に全てのサーバで同じ作業を行う必要があります。この「tarball」からRPMを作る方法ももちろんあるんですが、SPECファイルというものを書かなければいけなかったり、なかなか面倒。そんな時に活躍するのがこの「checkinstall」コマンドです。/usr/usr/doc/usr/doc/checkinstall/usr/doc/checkinstall/BUGS/usr/doc/checkinstall/COPYING/usr/doc/checkinstall/CREDITS/usr/doc/checkinstall/Changelog/usr/doc/checkinstall/FAQ/usr/doc/checkinstall/INSTALL/usr/doc/checkinstall/README/usr/doc/checkinstall/RELNOTES/usr/doc/checkinstall/TODOいやそれドキュメントだけじゃん・・・・orzこれじゃRPMパッケージ化しても意味がありません。いうことで、僕が行った手順をざっくりご紹介。install」ですね。コンパイルできません。モヤタノートhttp://d.hatena.ne.jp/shiumachi/20100303/1267567785こちらを参考にさせて頂き、本家のgitリポジトリから最新版をcloneしてきました。だいたい次に「インストールしたcheckinstallでcheckinstallそのもののRPMパッケージを作成」するんですが、ここでなぜか上手く行かないんです。正確には、RPMパッケージは生成されるんですが、その中身にドキュメント類しか無いんです。最初はそういうものかと思いましたが(笑)また、生成中に「”installwatch.so”がロードできねぇYO!」(意訳)というエラーメッセージがモリモリ出ています。ディレクトリにインストールしています。実はこれがcheckinstallコマンドの設定ファイルだったりします。MAKEPKG=/sbin/makepkg27てな部分がありました。ある、という設定ですね。CentOSにはそんなコマンドは存在していません。コメントを見ると「Slackwareのmakepkgを使いたい場合はこれをセットしろ」ってあります。いやこれCentOSだし。MAKEPKG=27消しちゃいました。テヘペロ続いてinstallwatch.soの問題。ライブラリがインストールされます。LD_PRELOADありました。いうことは、このLIBDIR変数が間違っているんじゃないかと当たりをつけてみます。