checkinstallのインストール

概要

ソースコードだけでパッケージが提供されていない。アンインストールの手間などを考えるとパッケージ管理システムで一元管理したいが、独自にパッケージを作成するノウハウはない。

多くのソフトウェアがパッケージで提供されるようになったいまでも、こういうシーンは存在します。すでにパッケージが提供されているソフトウェアであっても、最新のパッチを取り込みたいといった理由で、ソースコードからインストールする必要に迫られることもあります。

checkinstallmake installの動作を追跡して、パッケージを作成するツールです。独自にパッケージを作成するノウハウがなくても、いくつかの質問に答えるだけでパッケージを作成することができます。作成できるパッケージには、Fedora CoreRed Hat Enterprise Linuxが採用するRPMDebian GNU/Linuxが採用するdebSlackware LinuxPlamo Linuxが採用するtgzの三種類があります。



構成

CentOS release 5.6 (Final)
checkinstall 1.6.2, Copyright 2009 Felipe Eduardo Sanchez Diaz Duran



準備

rpm-buildをインストールします。

# yum install rpm-build.x86_64
...
==================================================================================================
 Package                   Arch               Version                      Repository        Size
==================================================================================================
Installing:
 rpm-build                 x86_64             4.4.2.3-22.el5               base             302 k
Installing for dependencies:
 elfutils                  x86_64             0.137-3.el5                  base             215 k
 elfutils-libs             x86_64             0.137-3.el5                  base             183 k
 patch                     x86_64             2.5.4-31.el5                 base              63 k

Transaction Summary
==================================================================================================
Install       4 Package(s)
Upgrade       0 Package(s)

msgfmtコマンドが必要になるので、gettextもインストールしておきます。msgfmtコマンドはgettextに含まれています。

# yum install gettext.x86_64
...
==================================================================================================
 Package                Arch                  Version                   Repository           Size
==================================================================================================
Installing:
 gettext                x86_64                0.17-1.el5                base                2.4 M

Transaction Summary
==================================================================================================
Install       1 Package(s)
Upgrade       0 Package(s)



インストール

# cd /usr/local/src
# wget http://asic-linux.com.mx/~izto/checkinstall/files/source/checkinstall-1.6.2.tar.gz
# tar zxvf checkinstall-1.6.2.tar.gz
# cd checkinstall-1.6.2
# make
# make install



インストールの確認

# checkinstall --version

checkinstall 1.6.2, Copyright 2009 Felipe Eduardo Sanchez Diaz Duran
           This software is released under the GNU GPL.
...



パッケージ管理への追加

checkinstall自身をRPMで管理するために、checkinstall自身のRPMパッケージを作成します。

# checkinstall

途中、パッケージ方式を質問されるので、[R]を押してRPMパッケージを選択します。それ以外の質問はデフォルトのまま([Enter]を空打ち)で問題ありません。

使用するパッケージ方式を選んでください。
Slackwareなら[S], RPMなら[R], Debianなら[D]を入力

最後に確認を求められるので、間違いがないか確認します。

**************************************
**** RPM package creation selected ***
**************************************

このパッケージは以下の内容で構成されます: 

1 -  Summary: [ CheckInstall installations tracker, version 1.6.2 ]
2 -  Name:    [ checkinstall ]
3 -  Version: [ 1.6.2 ]
4 -  Release: [ 1 ]
5 -  License: [ GPL ]
6 -  Group:   [ Applications/System ]
7 -  Architecture: [ x86_64 ]
8 -  Source location: [ checkinstall-1.6.2 ]
9 -  Alternate source location: [  ]
10 - Requires: [  ]
11 - Provides: [ checkinstall ]

変更するものの番号を入力してください。Enterで続行します: 

パッケージの作成に成功すると、以下のメッセージが表示されます。

**********************************************************************

 Done. The new package has been saved to

 /usr/src/redhat/RPMS/x86_64/checkinstall-1.6.2-1.x86_64.rpm
 You can install it in your system anytime using: 

      rpm -i checkinstall-1.6.2-1.x86_64.rpm

**********************************************************************

パッケージ管理に加えるため、作成されたRPMパッケージを使って上書きインストールします。

# rpm -ivh /usr/src/redhat/RPMS/x86_64/checkinstall-1.6.2-1.x86_64.rpm
# rpm -qa | grep checkinstall
checkinstall-1.6.2-1