-
ソースよりRPMを生成する場合、rootユーザであれば、RPM生成は可能です。
本来、パッケージのrebuild作業ではアプリケーションの仮インストールが行われたり、
ライブラリの仮変更が行われます。しかし、万が一、specファイルに不備があった場合、
rootユーザでのrebuild作業は、既存のシステムの上書き及び
変更が行なわれてしまう可能性があります。
そのため、今回はrebuild作業は一般ユーザで行ない、
インストール作業だけ、rootユーザで実施するための準備を行ないます。
- 本作業で主に使用するもの
- 特にありません。
- 以下の作業は、一般ユーザで行うことを前提に記述しています。
- ダウンロードしたファイルは、一般ユーザのデスクトップにしたものとして記述しています。
- ここでは、一般ユーザを"penguin"としています。作業時は適用に読み替えて下さい。
- 以下の作業は、インターネットに接続可能な状態になっていることを前堤に記述しています。
ソースからRPMを生成する為の準備
| 初版 : | 05.10.31 |
| 更新日 : | 06.09.03 |
| 動作確認 : | CentOS 4.X |
※ 注意
-
まずは、[/home/penguin/]配下に任意名のディレクトリを作ります。(ここでは"rpm"としています。)
次に[/home/penguin/rpm/]配下を[/usr/src/redhat/]配下と同様なディレクトリ構成にします。
$ cd; pwd
/home/penguin
$ mkdir ./rpm
$ ls -ld ./rpm/
drwxrwxr-x 2 penguin penguin 4096 X月 X XX:XX ./rpm/
$ mkdir -p ./rpm/{BUILD,SOURCES,SPECS,SRPMS,RPMS/{noarc,athlon,i386,i586,i686}}
$ ls -l ./rpm/
合計 20
drwxrwxr-x 2 penguin penguin 4096 X月 X XX:XX BUILD
drwxrwxr-x 7 penguin penguin 4096 X月 X XX:XX RPMS
drwxrwxr-x 2 penguin penguin 4096 X月 X XX:XX SOURCES
drwxrwxr-x 2 penguin penguin 4096 X月 X XX:XX SPECS
drwxrwxr-x 2 penguin penguin 4096 X月 X XX:XX SRPMS
$ ls -l ./rpm/RPMS/
合計 20
drwxrwxr-x 2 penguin penguin 4096 X月 X XX:XX athlon
drwxrwxr-x 2 penguin penguin 4096 X月 X XX:XX i386
drwxrwxr-x 2 penguin penguin 4096 X月 X XX:XX i586
drwxrwxr-x 2 penguin penguin 4096 X月 X XX:XX i686
drwxrwxr-x 2 penguin penguin 4096 X月 X XX:XX noarc
-
次に上記で作製したディレクトリでRPMを生成できるよう、RPMのマクロファイルを生成します。
$ echo "%_topdir `pwd`/rpm" > .rpmmacros
↑ 「`」は[Shift] + [@](日本語キーボードの場合)
$ ls -la ./.rpmmacros
-rw-rw-r-- 1 penguin penguin XX X月 X XX:XX ./.rpmmacros
$ cat ./.rpmmacros
%_topdir /home/penguin/rpm
- 以上で、一般ユーザ用RPM構築環境の設定は完了です。
作業内容