x86_64用のcheckinstallのrpmを作成するplaybooksellCentOS,Checkinstall,Ansibleplaybookはこちらです。checkinstallというroleになっています。akishin999の日記を参考にさせて頂きました。ありがとうございます。akisin999さんの記事を参考にしつつ、さらに変更しています。インストール先プレフィクスは/usr/localではなく/usrとしています。設定ファイルcheckinstallrcの場所は/usr/local/libではなく/etcとしています。使用しているcheckinstallのソースはgitレポジトリのhttp://checkinstall.izto.org/checkinstall.gitの最新版です。ある1.6.2の後にいくつか修正が入っています。以下はplaybookを作るときに試行錯誤した対応のメモです。lib64問題の対応についてx86_64環境でもMakefileのLIBDIRが/usr/local/lib/になってしまうため、installwatch.soが/usr/local/lib64/ではなく/usr/local/lib/に入ってしまうという問題がありました。インストール後シンボリックリンクで凌ぐという手もあるのですが、これだとcheckinstallのrpmアンインストール時に残ってしまうのが残念です。checkinstallのオプション引数の後にはインストールコマンドを指定できるcheckinstallのbashスクリプトを読んでみると、オプション引数の後にインストールコマンドを指定できることがわかりました。installになります。install時とcheckinstallの実行時にLIBDIR=/usr/lib64と指定するとinstallwatch.soのインストール先が/usr/lib64になりました。実際には以下のようにPREFIXとCONFDIRも指定しています。含まれないという問題が置きました。ignored.installwatch/Makefileを見てみると、既にファイルがある場合は一旦消してからinstallコマンドを実行しています。このためにinstall実行時に/usr/local/lib64/installwatch.soが読み込めないのでエラーになっているようです。$(LIBDIR)そこでLD_PRELOADでソースディレクトリのinstallwatch.soを指定してcheckinstallを実行するようにしたところ、問題は解決しました。/root/rpmbuild/x86_64/RPMS/checkinstall-1.6.2.20110309-1.x86_64.rpmで調べると、checkinstallrcが含まれていませんでした。checkinstallのソースのトップディレクトリのMakefileを見ると、checkinstallrcはソースディレクトリからinstallコマンドでインストールするのではなく、インストール後のcheckinstallrc-distをコピーして作っていました。詳しく調査はしていないですが、こういう場合はcheckinstallのウォッチ対象にならないようです。デフォルトの設定を変更したいということもあるので、checkinstallrc-distを編集したcheckinstallrcを作ってそちらをインストールするようにしました。\一旦rpmにしてしまえば、インストール時に設定ファイルがある場合は.rpmsaveの拡張子付きで保存されるはずなので、問題無いと思います。