Menu Close
Settings Close

Language and Page Formatting Options

Red Hat Training

A Red Hat training course is available for RHEL 8

2.11. ソースコードを tarball へ追加

本セクションでは、ソースコードとは セクションで紹介されている 3 つの Hello World プログラムをそれぞれ gzip で圧縮した tarball にまとめる方法を説明します。これは、後で配布用にパッケージ化するソフトウェアをリリースする一般的な方法です。

例2.4 bello プロジェクトを tarball へ追加

bello プロジェクトは、bashHello World を実装しています。この実装には bello シェルスクリプトのみが含まれるため、生成される tar.gz アーカイブには LICENSE ファイルとは別のファイルのみが含まれます。

この手順では、配布用に bello を準備する方法を示しています。

前提条件

このプログラムのバージョンが 0.1 であることを考慮してください。

手順

  1. 必要なファイルをすべて 1 つのディレクトリーに追加します。

    $ mkdir /tmp/bello-0.1
    
    $ mv ~/bello /tmp/bello-0.1/
    
    $ cp /tmp/LICENSE /tmp/bello-0.1/
  2. 配布用のアーカイブを作成し、これを ~/rpmbuild/SOURCES/ ディレクトリーに移動します。このディレクトリーは、rpmbuild コマンドがパッケージを構築するファイルを保存するデフォルトディレクトリーです。

    $ cd /tmp/
    
    $ tar -cvzf bello-0.1.tar.gz bello-0.1
    bello-0.1/
    bello-0.1/LICENSE
    bello-0.1/bello
    
    $ mv /tmp/bello-0.1.tar.gz ~/rpmbuild/SOURCES/

bash で書かれたサンプルソースコードの詳細は「bash で書かれた Hello World」を参照してください。

例2.5 pello プロジェクトを tarball へ追加

pello プロジェクトは、PythonHello World を実装します。この実装には pello.py プログラムのみが含まれるため、生成された tar.gz アーカイブには LICENSE ファイルとは異なる 1 つのファイルのみが含まれます。

この手順では、pello プロジェクトを配布するために準備する方法を示します。

前提条件

このプログラムのバージョンが 0.1.1 であることを考慮する。

手順

  1. 必要なファイルをすべて 1 つのディレクトリーに追加します。

    $ mkdir /tmp/pello-0.1.2
    
    $ mv ~/pello.py /tmp/pello-0.1.2/
    
    $ cp /tmp/LICENSE /tmp/pello-0.1.2/
  2. 配布用のアーカイブを作成し、これを ~/rpmbuild/SOURCES/ ディレクトリーに移動します。このディレクトリーは、rpmbuild コマンドがパッケージを構築するファイルを保存するデフォルトディレクトリーです。

    $ cd /tmp/
    
    $ tar -cvzf pello-0.1.2.tar.gz pello-0.1.2
    pello-0.1.2/
    pello-0.1.2/LICENSE
    pello-0.1.2/pello.py
    
    $ mv /tmp/pello-0.1.2.tar.gz ~/rpmbuild/SOURCES/

Python で書かれたサンプルソースコードの詳細は「Python で書かれた Hello World」を参照してください。

例2.6 cello プロジェクトを tarball へ追加

cello プロジェクトは、C の Hello World を実装します。この実装には、cello.c および Makefile ファイルだけが含まれます。そのため、生成される tar.gz アーカイブには、LICENSE ファイル以外にファイルが 2 つ含まれます。

パッチ ファイルは、プログラムとともにアーカイブで配布されないことに注意してください。RPM Packager は、RPM を構築する際にパッチを適用します。パッチは、.tar.gz アーカイブとともに、~/rpmbuild/SOURCES/ ディレクトリーに配置されます。

この手順では、cello プロジェクトを配布するために準備する方法を示します。

前提条件

このプログラムのバージョンが 1.0 であることを考慮してください。

手順

  1. 必要なファイルをすべて 1 つのディレクトリーに追加します。

    $ mkdir /tmp/cello-1.0
    
    $ mv ~/cello.c /tmp/cello-1.0/
    
    $ mv ~/Makefile /tmp/cello-1.0/
    
    $ cp /tmp/LICENSE /tmp/cello-1.0/
  2. 配布用のアーカイブを作成し、これを ~/rpmbuild/SOURCES/ ディレクトリーに移動します。このディレクトリーは、rpmbuild コマンドがパッケージを構築するファイルを保存するデフォルトディレクトリーです。

    $ cd /tmp/
    
    $ tar -cvzf cello-1.0.tar.gz cello-1.0
    cello-1.0/
    cello-1.0/Makefile
    cello-1.0/cello.c
    cello-1.0/LICENSE
    
    $ mv /tmp/cello-1.0.tar.gz ~/rpmbuild/SOURCES/
  3. パッチを追加します。

    $ mv ~/cello-output-first-patch.patch ~/rpmbuild/SOURCES/

C で書かれたサンプルソースコードの詳細は「C で書かれた Hello World」を参照してください。