Changes between Version 4 and Version 5 of self-build-creation


Ignore:
Timestamp:
2008/05/19 13:24:46 (16 years ago)
Author:
kazutaka
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • self-build-creation

    v4 v5  
    1010   * 続いて wget を使ってソースをダウンロード 
    1111   * 後は、rpmbuild -bb でターゲットのパッケージを所定のディレクトリにビルド 
     12   * rpm2cpio | cpio を使ってビルドしたパッケージからファイルを事前に展開 (オプショナル) 
    1213 * apt/synaptic を使ってインストールされた場合は、Scripts::PM::Post:: というスロットを使って、rpm の DB に変更がコミットされた(= self-build-%{target} 自体のインストールが完了した)直後にヘルパースクリプトを呼び出します。[[br]]このスクリプトが所定のディレクトリ(/var/chache/self-build)に置かれたターゲットの rpm ファイルをインストールします。 
    1314 
     
    1920   i. !PreReq: にターゲットのプログラムの !BuildRequires: と同じものを書いておきます。[[br]]こうすることで、%post でコンパイルする時に必要となるパッケージが一緒にインストールされます。 
    2021   i. %install で Source? で定義した各種ファイルを全て  ${RPM_BUILD_ROOT}/%{_datadir}/self-build-lame にインストールします。[[br]]またこれらのファイルを %files でも指定しておきます。 
    21    i. %post で rpm パッケージをビルドするヘルパースクリプトを、以下のように実行します。[[br]]%post[[br]]/usr/lib/rpm/self-build-rpm.sh self-build-lame lame.spec !http://...(ソースダウンロード URL) 
     22   i. %post で rpm パッケージをビルドするヘルパースクリプトを、以下のように実行します。 
     23{{{ 
     24%post 
     25/usr/lib/rpm/self-build-rpm.sh self-build-lame lame.spec !http://...(ソースダウンロード URL) 
     26}}} 
    2227      * 1つ目の引数は、self-build パッケージの名前を指定します。[[br]]この名前を使って spec や patch 類が置いてあるディレクトリ(ここでは /usr/share/self-build-lame)を特定します。 
    2328      * 2つ目の引数は、rpm のビルドに使用する spec ファイル名を指定します。 
    2429      * 3つ目の引数は、ソースファイルをダウンロードするための URL を指定します。[[br]]ヘルパースクリプトはこの URL から wget を使ってソースをダウンロードしようとします。[[br]]3つめ以降の引数は全てソースの URL と解釈するので、複数のファイルをダウンロードする必要がある場合は、続けて指定できます。 
     30   i. 他の self-build パッケージから依存される場合は、%post で以下のようヘルパースクリプトを実行して、作成した rpm パッケージが実際にインストールされるより前に、必要なファイルをファイルシステム上に展開します。(オプショナル) 
     31{{{ 
     32/usr/lib/rpm/pre-allocate-rpm.sh %{pkgname}-%{version}-%{release} \ 
     33                                 %{pkgname}-devel-%{version}-%{release} 
     34}}} 
     35      * 引数には、ターゲットの rpm パッケージ名を指定します。[[br]]対象のファイルが特定できるように Version と Release まで指定する必要があります。 
     36      * ヘルパースクリプトは指定された rpm から 設定ファイル(rpm -qc で表示されるもの)とドキュメント(rpm -qd で表示されるもの)を除いたファイルを rpm2cpio | cpio コマンドで抽出し、ファイルシステム上に展開します。 
     37      * なおこの展開したファイルは、直後の rpm パッケージのインストールにより上書きされます。 
    2538 1. spec ができたら、$ rpm -ba self-build-lame.spec で rpm パッケージを作成し、その後 root になって # rpm -Uvh self-build-lame-3.97-0vl3.i386.rpm のようにしてインストールし、ターゲットの rpm ファイルが /var/cache/self-build 以下にできあがることを確認します。 
    2639