このドキュメントで説明するソフトウェアは、Extended SupportまたはSustaining Supportのいずれかにあります。 詳細は、https://www.oracle.com/us/support/library/enterprise-linux-support-policies-069172.pdfを参照してください。
Oracleでは、このドキュメントに記載されているソフトウェアをできるだけ早くアップグレードすることをお薦めします。

機械翻訳について

10.1.3 RPMのビルド

ノート

RPMのビルドにroot権限は必要ありません。

RPMをビルドするには:

  1. 次のように、パッケージ用のソース・コード・ファイルのtarballを作成します。

    $ tar zcvf mypkg-1.0.tar.gz mypkg-1.0
  2. tarballを/root/rpmbuildの下にあるSOURCESディレクトリにコピーします。

    $ cp mypkg-1.0.tar.gz /root/rpmbuild/SOURCES

    SOURCESを別のディレクトリに構成している場合は、--rootオプションを使用して、このディレクトリをrpmbuildコマンドに指定します。

  3. 仕様(spec)ファイルを作成して、パッケージに関する情報(パッケージの名前、バージョン、リリース番号、必要なその他のパッケージ、tarball名など)を含めます。 ファイルには少なくとも次のセクションが含まれている必要があります。

    %prep

    ビルドの準備に必要なコマンドを含めます。

    %build

    ソフトウェアのビルドに必要なコマンドを含めます。 必要な手順のほとんどはmakefileに記述するため、通常はmakeのみを必要とします。

    %install

    新たにビルドされたアプリケーションまたはライブラリのインストールに必要なコマンドを含めます。

    %clean

    前のセクションのコマンドで作成されたファイルのクリーンアップに必要なコマンドを含めます。

    %files

    ファイル属性とともにバイナリRPMにパッケージ化されるファイルをリストします。

    パッケージ用のspecファイルの作成例は、/root/rpmbuild/SPECSの下にあるspecファイルを参照してください。

    /usr/lib/rpmにあるfind-requiresスクリプトとfind-providesスクリプトを使用すると、Perl、Python、Tclスクリプト、Javaパッケージ、およびそれ以外の依存関係を判定できます。find-requiresは、標準出力に指定されたファイルが必要とする共有ライブラリを特定します。find-providesは、標準出力に指定されたファイルから提供される共有ライブラリを特定します。

  4. ソースRPMとバイナリRPMの両方をビルドするには、rpmbuildコマンドに-baオプションと仕様ファイルの名前を指定します。

    $ rpmbuild -ba spec_file

    バイナリRPMのみをビルドする場合は、かわりに-bbオプションを指定します。

パッケージがビルドされたら、ダウンロードできるようにWebサーバーに公開します。

RPMパッケージの作成の詳細は、rpmbuild(8)マニュアル・ページおよびRPMのドキュメント(http://www.rpm.org/wiki/Docs)を参照してください。