Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
1.3. 最初の RPM パッケージ作成
RPM パッケージの作成は複雑になる可能性があります。以下では、複数のことをスキップし、簡素化した完全で利用できる RPM Spec ファイルです。
Name: hello-world
Version: 1
Release: 1
Summary: Most simple RPM package
License: FIXME
%description
This is my first RPM package, which does nothing.
%prep
# we have no source, so nothing here
%build
cat > hello-world.sh <<EOF
#!/usr/bin/bash
echo Hello world
EOF
%install
mkdir -p %{buildroot}/usr/bin/
install -m 755 hello-world.sh %{buildroot}/usr/bin/hello-world.sh
%files
/usr/bin/hello-world.sh
%changelog
# let's skip this for now
このファイルを hello-world.spec として保存します。
ここで、以下のコマンドを使用します。
$ rpmdev-setuptree $ rpmbuild -ba hello-world.spec
コマンド rpmdev-setuptree は、複数の作業ディレクトリーを作成します。これらのディレクトリーは $HOME に永続的に格納されているため、このコマンドを再び使用する必要はありません。
コマンド rpmbuild は、実際の rpm パッケージを作成します。このコマンドの出力は、以下のようになります。
... [SNIP] Wrote: /home/<username>/rpmbuild/SRPMS/hello-world-1-1.src.rpm Wrote: /home/<username>/rpmbuild/RPMS/x86_64/hello-world-1-1.x86_64.rpm Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.wgaJzv + umask 022 + cd /home/<username>/rpmbuild/BUILD + /usr/bin/rm -rf /home/<username>/rpmbuild/BUILDROOT/hello-world-1-1.x86_64 + exit 0
/home/<username>/rpmbuild/RPMS/x86_64/hello-world-1-1.x86_64.rpm ファイルが、最初の RPM パッケージです。これはシステムにインストールしてテストできます。