|  Linux 
            Tips | 
        
 
          
  | 
 
            
 ソースファイルからRPMファイルを作成するには 
北浦訓行 
              2003/12/11 
 | 
      
 インストールしたいプログラムが、tarボールのみで配布されていることも多い。しかし、ソースファイルをそのままコンパイル/インストールすると、RPMによる恩恵(インストール済みプログラムの検索やプログラムのアップグレードなど)が得られないので、プログラムはできるだけRPMファイルでインストールしたいものだ。
 「tarボールからRPMファイルを作成するには」で説明したとおり、SPECファイルが用意されていればrpmbuildコマンドでtarボールからRPMファイルを作成できる。しかし、ここで紹介するCheckInstallを使うと、SPECファイルが用意されていなくてもRPMファイルを作成できる。
 まず、CheckInstallのWebサイト(http://asic-linux.com.mx/~izto/checkinstall/)からソースファイルをダウンロードしてインストールする。原稿執筆時点での最新版は、checkinstall-1.6.0beta2だ。
$ tar zxvf checkinstall-1.6.0beta2.tgz 
$ cd checkinstall-1.6.0beta2 
$ make 
$ su 
Password: 
# make install 
# /usr/local/sbin/checkinstall 
(省略) 
Slackware [S], RPM [R] or Debian [D]?r ←「r」を入力して[Enter]キーを押す 
 
This package will be built according to these values: 
 
1 -  Summary: [ CheckInstall installations tracker, version 1.6.0beta2 ] 
2 -  Name:    [ checkinstall ] 
3 -  Version: [ 1.6.0beta2 ] 
4 -  Release: [ 1 ] 
5 -  License: [ GPL ] 
6 -  Group:   [ Applications/System ] 
7 -  Architecture: [ i386 ] 
8 -  Source location: [ checkinstall-1.6.0beta2 ] 
9 -  Alternate source location: [  ] 
10 - Provides: [ checkinstall ] 
11 - Requires: [  ] 
 
Enter a number to change any of them or press ENTER to continue: ←[Enter]キーを押す | 
 以上で、/usr/src/redhat/RPMS/i386ディレクトリにcheckinstall-1.6.0beta2-1.i386.rpmというファイルが作成されるので、これをインストールする。
# rpm -ihv checkinstall-1.6.0beta2-1.i386.rpm 
Preparing...            ####################################### [100%] 
   1:checkinstall       ####################################### [100%] | 
 これでCheckInstallのインストール作業は終了だ。ここでは、checkinstallコマンドの動作確認のため、SylpheedのRPMファイルを作成してみる。Sylpheedのtarボールを展開したら、./configureコマンドを実行してMakefileを作成し、checkinstallコマンドを実行する。
$ tar jxf sylpheed-0.9.7.tar.bz2 
$ cd sylpheed-0.9.7 
$ ./configure 
$ su 
Password: 
# /usr/local/sbin/checkinstall 
(省略) 
The package documentation directory ./doc-pak does not exist. 
Should I create a default set of package docs? [y]:y ←「y」を入力して[Enter]キーを押す 
(省略) 
Please choose the packaging method you want to use. 
Slackware [S], RPM [R] or Debian [D]?r ←「r」を入力して[Enter]キーを押す 
 
Please write a description for the package. 
End your description with an empty line or EOF. 
>> ←[Enter]キーを押す 
 
This package will be built according to these values: 
 
1 -  Summary: [ Package created with checkinstall 1.6.0beta2 ] 
2 -  Name:    [ sylpheed ] 
3 -  Version: [ 0.9.7 ] 
4 -  Release: [ 1 ] 
5 -  License: [ GPL ] 
6 -  Group:   [ Applications/System ] 
7 -  Architecture: [ i386 ] 
8 -  Source location: [ sylpheed-0.9.7 ] 
9 -  Alternate source location: [  ] 
10 - Provides: [ sylpheed ] 
11 - Requires: [  ] 
 
Enter a number to change any of them or press ENTER to continue: ←[Enter]キーを押す | 
 以上で、/usr/src/redhat/RPMS/i386ディレクトリにsylpheed-0.9.7-1.i386.rpmが作成される。
# ls -l /usr/src/redhat/RPMS/i386/ 
合計 13072 
(省略) 
-rw-r--r--    1 root     root      1533239 11月 30 02:44 sylpheed-0.9.7-1.i386.rpm | 
|  Linux Squareフォーラム Linux Tipsカテゴリ別インデックス | 
 
	
		Linux & OSS 記事ランキング
		
		
			本日
			月間