- - PR -
specファイルに関して
1
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2009-04-07 19:09
いつもここにはお世話になっています。かなものと申します。
rpmパッケージ作成でわからない事があり、質問させて頂きます。 現在学習目的で、specが無いtar.gzのアプリケーションを、rpmパッケージ化しようと試みています。 とは言っても、checkinstalを使ってある程度自動作成したものを変更するという形ですが・・・ (教材としてasterisk-1.4.21.2を使用しています) 自動作成したspecを編集し、pacthの適用、rpmファイルの分割等の編集を行う事が出来ました。 又、そのファイルをインストールし、エラーなくrpmコマンドが終了している事も確認出来ました。 質問はここからです。 rpmパッケージは作成されましたが、一部ファイルが足りませんでした。 確認した所、本来のインストール方法として「make install」の後に 「make config」「make sapmle」を実行する必要があり、rpmbuild実行時に それが行われていませんでした。 しかし、「make config」「make sapmle」を実行するようspecファイルに記述する方法がわかりませんでした。 現在のbuild周りの内容はこのようになっています。
試しに、何も考えずに%makeinstallの下に、そのまま「make config」「make sapmle」を加えてみましたが、 エラーが発生し上手くいきませんでした。 ここから、どのように編集したら「make config」「make sapmle」を加えられるのでしょうか。 ご教授頂ければ幸いです。 ※備考 「make config」は初期設定のコンフィグファイル作成 「make sapmle」はサービススクリプト設置 OS:CentOS4.7/5.3 checkinstall-1.6.1-1 [ メッセージ編集済み 編集者: かなもの 編集日時 2009-04-07 19:13 ] | ||||||||||||
|
投稿日時: 2009-04-08 00:53
どのようなエラーが出るのか掲示された方がよくないでしょうか? とりあえず、インストール先がrpmbuild用のディレクトリになっていたりとか 通常とは環境が異なっている場合もありますのでご注意を。 rpmbuildでエラーになるとテンポラリにエラーとなったスクリプトが残っているかと。 そちらの内容も参考になるのではないかと思われます。 | ||||||||||||
|
投稿日時: 2009-04-08 11:25
ご回答ありがとうございます。説明不足が多々あり、申し訳ありません。 まず、提示した情報に誤りがありました。 「make config」は、対象のバージョンにはありませんでした。 「make sapmle」は「make sapmles」の誤字です。 「make sapmles」を実行する事で、デフォルトコンフィグファイルが設置されます。 この作業はroot権限で作業しています。 作業ディレクトリは、/usr/src/redhat/ 上で行っています。 エラーに関しては、/etc/asteriskにコンフィグファイルが本来出来るのですが、 そのファイルが見当たらないというエラーです。
記述はこのようにしております。
make samples を実行すると、/var/tmp/asterisk-1.4.21.2-root/etc/asterisk/ に作成されず、本当の/etc/asteriskに展開されてしまいます。 これを /var/tmp/asterisk-1.4.21.2-root/etc/asterisk/ に作成したいと考えています。 ですが、rpmbuildの理解不足もあり、これを実現する為のspecファイルの記述方法がわかりませんでした。 情報が不足してましたら、追ってこちらに記載させて頂きます。 [ メッセージ編集済み 編集者: かなもの 編集日時 2009-04-08 11:26 ] | ||||||||||||
|
投稿日時: 2009-04-08 12:59
試してないですが、 make samples DESTDIR=%{RPM_BUILD_ROOT} では駄目ですか? [ メッセージ編集済み 編集者: あんとれ 編集日時 2009-04-08 13:03 ] | ||||||||||||
|
投稿日時: 2009-04-08 21:23
ご回答ありがとうございます。 上記をそのまま使用出来なかったのですが、下記のように修正した所、想定している動作になりました。 make samples DESTDIR="$RPM_BUILD_ROOT" これで一歩完成に近づく事が出来ました。 DESTDIRというオプションがある事・使い方を始めて知りました。 ありがとうございました。 |
1