パッケージの作成・更新
- 5.2.1. SPECファイルの準備
- 5.2.2. ソースやパッチの配置
- 5.2.3. ソースRPMの作成
- 5.2.4. バイナリRPMの作成
5.2.1. SPECファイルの準備
パッケージの設計書であるSPECファイルを準備します。
既存パッケージを更新する場合は、
$ apt-get source パッケージ名
新規パッケージの場合は、SPECファイルを新たに作成します。この時、ファイル名はパッケージ名-vl.specの形式にしてください。
SPECファイルの詳細については、RPMパッケージの作成方法の第5章 SPECファイルの記述を参照してください。
5.2.2. ソースやパッチの配置
パッケージの作成に必要なソースやパッチを%_topdir/SOURCES/に配置してください。セクション 5.2.1 - SPECファイルの準備でapt-get sourceを利用した場合は、更新前のソースやパッチは既に配置されているはずです。
新たにパッチを作成した場合やソースのバージョンを更新する場合は、それらを先ほどのディレクトリに配置してください。
5.2.3. ソースRPMの作成
SPECファイルを元にソースRPMを作成します。以下のコマンドを実行してください。
$ rpmbuild -bs SPECファイル名
GnuPGによる署名をするように設定している場合は、パスフレーズを求められますので入力してください。
パスフレーズの入力:
パスフレーズに問題がなければ、次のように表示されます。
パスフレーズは正常です。 署名の作成中: 1005
特に問題がなければ、書き込み完了の案内が表示されます。
5.2.4. バイナリRPMの作成
まず、次のようにしてchroot環境(仮想のファイルシステム)にVine Linuxの基本システムをインストールします。(chrootを利用する関係上、vbuilderの実行にはroot権限が必要となります。)
# vbuilder --version 5.1 --arch i386 clean build
5.1やi386といったオプション値は、ターゲット環境に併せて変更してください。この作業には、しばらく時間がかかります。
Making a build farm for 5.1_i386 done.
# vbuilder --version 5.1 --arch i386 --unionfs clean build-rpm /path/to/hoge.src.rpm
特に問題がなければ、作成されたパッケージが、%_topdir/vbuilder/以下にコピーされます。(vbuilderの出力をよく確認してください。)
ビルドが途中で失敗した場合は、セクション 5.2.1 - SPECファイルの準備に戻って原因を修正してください。(BuildRequiresの修正など)
vbuilderの詳細は、http://trac.vinelinux.org/wiki/VineBootstrapを参照してください。