[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 2chのread.cgiへ]
Update time : 05/09 08:46 / Filesize : 158 KB / Number-of Response : 550
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

rpm作成スレッド



1 名前:login:Penguin [02/10/12 14:56 ID:JJtJdOQ0]
rpm管理って便利だよねー。
でもたまにrpmのないプログラムに遭遇する。
そんなときどうしようと思ったらこのスレで質問しよう。

だれかつくってねーかなぁと思ったら
rpmfind.net/

しかたねー作るかとおもったら
www.linux.or.jp/JF/JFdocs/RPM-BUILD-HOWTO.html
www.linux.or.jp/JF/JFdocs/RPM-HOWTO.html
www.vinelinux.org/MakingRPM/

89 名前:login:Penguin [03/04/28 02:26 ID:VMyeIqWH]
>>88
WindowsからLinuxにデータ移すの面倒くさいし
そもそも出所不明のRPMなんて、セキュリティ的に怖い。
スクリプトの中に rm -rf / とか入ってたり・・・(+д+)

90 名前:login:Penguin mailto:sage [03/04/28 02:31 ID:NDj4sXse]
--addsign すればいいわけだし、どこかに安全な場所に md5sum の
リストを置いておけばいいのでは?

そもそも、wine で Winny は簡単に動く時代ですし、あなたの妄想は
時代遅れだと思いますよ。

91 名前:89 [03/04/28 03:23 ID:VMyeIqWH]
>>90
md5sum はちょっと考えたんだけど
Web上にリスト載せるなら、わざわざWinny使う必要ないなと思ったが
まあサーバの負担とか回線のトラフィックとかWebスペースの問題があるならOKだな。
--addsign だったら、この人は安心 って事が分かってないといけないな。

wineでwinnyはちゃんと動くのか、それは知らんかった。時代遅れだな。
RPM専用でwinny立ち上げるのもどうかと思うし
他の落としたファイルの日本語ファイル名が化けちゃうけどnkfでOKかな。半角カナは知らんけど。

つまり、"どこか安全な場所にある md5sumのリストと 信頼できる作成者のリスト"が必要。
そうしたら、漏れの作った大量のRPMも流そっと。

92 名前:login:Penguin mailto:sage [03/04/30 13:35 ID:2eYCFaSN]
>>76
亀レスだが。
Linux インスコして一月弱。Vine 使っているんだけど、簡単な spec
書けたよ。RPM 関係の HOWTO 見てメモとりながらやれば
初心者でもなんとかなる。でも、初めてだったので、パッチらしい
パッチもあてなくてすむ小さなパッケージ二つ作るのに6時間
くらいかかった。(w

一度ガン画ってやってみれば、spec の読み方もわかるようになるし、
テメーでインスコしたソフトも簡単に削除できるようになるから、
やったことないヤシは挑戦すべし。
でも、いきなりでかいパッケージは作ろうとしない方が良いと思われ。
洩れは英辞郎をサクサク検索したくて、rdic と それに必要な mmap を
つくてみた。洩れみたいなヘタレにはこれくらいから始めるのがちょうどいい。


93 名前:山崎渉 mailto:(^^) [03/05/22 02:05 ID:p4opmoqv]
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―

94 名前:山崎 渉 mailto:(^^) [03/07/15 11:34 ID:doz396Fq]

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄

95 名前:ぼるじょあ ◆yBEncckFOU mailto:(^^) [03/08/02 05:25 ID:+QUfMouI]
     ∧_∧  ∧_∧
ピュ.ー (  ・3・) (  ^^ ) <これからも僕たちを応援して下さいね(^^)。
  =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
  = ◎――――――◎                      山崎渉&ぼるじょあ

96 名前:山崎 渉 mailto:(^^) [03/08/15 23:26 ID:dil3w4kp]
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン

97 名前:login:Penguin mailto:age [03/10/29 02:34 ID:SqMCZ52G]
質問です。
libsomething.soを必要とするライブラリをmylib.i386.rpmとして配布したいと思っています。
しかし、libsomething.soはrpmではなくバイナリtar ballで配布されています。
すると、mylib.i386.rpmをインストールする際に libsomething.soを必要としています
と言われ、インストールできません。(Requiresが自動的に設定される)

強引な解決策として、Providesにlibsomething.soを追加すれば一応インストールされるのですが、
これは嘘っぱちなので、本当はやりたくありません。
どうすればいいでしょうか?



98 名前:97 mailto:age [03/10/29 03:17 ID:SqMCZ52G]
自己解決&新たな質問です。
www.rpm.org/max-rpm/s1-rpm-depend-auto-depend.html
を見て
AutoReq: no
にしてことなきを得ました。
しかし、これだと他のRequiresも一切無くなってしまうのですが、
libsomething.soだけ無効にする方法はないでしょうか?
www.zoi.to/~zoi/widestudio/ml/200205-/msg00153.html
に全く同じ質問がありますが、回答はついていませんでした。


99 名前:login:Penguin mailto:sage [03/10/29 03:29 ID:kwetqh4L]
>>97
本当はなんかやりかたあるのかもしれんが、てけとーな回避策。
echo "/usr/lib/rpm/find-requires | egrep -v libsomething.so" > /tmp/fr
chmod +x /tmp/fr
%__find-requires /tmp/fr


100 名前:login:Penguin mailto:sage [03/10/29 04:20 ID:BmAgd7w0]
>>97-98
libsomething.so が入ってるライブラリ用の SPEC ファイル書いて、
nosrc.rpm とか、src.rpm をつくって、
rpm でインストールできるようにして mylib と一緒に置いておく。
バイナリ tar ball なら、それほど難しくないはず。
mylib のほうは、その rpm を Requires に書いておけばいい。

そういった方法で対処した方が Requires を無効にするよりはいいと思う。

libsomething.so をインストールする時に、
checkinstall を使えばごまかせるかもしれないけど。

101 名前:97 mailto:age [03/10/29 05:29 ID:SqMCZ52G]
>>99
あ、なるほど。結果を改竄するということですね。
find-requiresのパスが気になるところですが、なんとかなりそうですね。
どうもありがとうございました。

>>100
実はlibsomething.soってのは Mozilla のライブラリなんです。
Mozillaは複数インストールされている可能性がある(gtk2の有無やらxftの有無やら
Firebirdだったりする)ので、できるだけrpm化を強制するのは避けたいんです。
> libsomething.so をインストールする時に、
> checkinstall を使えばごまかせるかもしれないけど。
ん…良く分かりませんのでちょっと調べてみます。どうもありがとう。

102 名前:97 mailto:age [03/10/29 05:37 ID:SqMCZ52G]
調べてみました。勘違いしてるかもしれませんが、
checkinstallはそれ自体をインストールしなきゃいけないようで配布に向いていないみたいです。
取り敢えず>>99さんの案で行ってみたいと思います。
どうもありがとうございました。

103 名前:login:Penguin [03/10/29 19:41 ID:e7zkr6A2]
最近簡単なrpmの作成はできるようになったんだけど
specファイルのテンプレートはemacsを使うと簡単だよね。
$ emacs hoge.spec &



104 名前:login:Penguin [03/10/29 21:15 ID:YDj1s4Qc]
日経リナックスの付録のLindnws4.0とOpenOfficeを入れましたが、日本語が入力できないとわかったので、古本屋で見つけたLinuxJapanの付録のWXGforLinux/FreeBSD Ver.1.0βをインストールしようとしましたが、うまくいきませんでした。説明によると

105 名前:login:Penguin [03/10/29 21:20 ID:YDj1s4Qc]
つづき説明によると、「パッケージはRPMファイルになっていますので、# rpm -ivh wxg-1.0b-1.i386.rpmのようにコマンドでインストールをおこないます。」とありましたが、さっぱりわかりません。どこに打ち込めばいいのでしょうか?

106 名前:login:Penguin mailto:sage [03/10/29 22:14 ID:crdJ3Hwi]
>>104-105
日系にゴラァ電しましょう。

107 名前:login:Penguin mailto:sage [03/10/29 23:09 ID:2QjzLGdx]
>>104-105
ここはrpmファイル"作成"スレじゃ。初心者スレ逝けゴルァと言いたいとこだが、、
日本語入力が出来ないとは変わった制限だな
と思ってちょっと検索してみたが、ATOKの変わりに
Canna(フリーの日本語入力ソフト)が入ってると書いてある。

ttp://yoshida.kir.jp/lindows/beta01.html

もしかして「日本語が入力できないとわかった」ってのは
「半角・全角キー」押しても無反応だったからってオチじゃない?
多分Shift+Spaceで日本語に切り替り変わるはず。
(日経Linuxの付録CDの説明ページにも書いてありそうなもんだが)





108 名前:login:Penguin [03/10/30 00:43 ID:hvbA9pnn]
Shift+Spaceを押すとどの文字を打っても四角の枠が打ち込まれます。

109 名前:login:Penguin mailto:sage [03/10/30 05:33 ID:T/Wt5eDR]
それは入力できてるけど表示が出来てないだけかと。
日本語表示できない状態なのに日本語を表示しようとするから豆腐に化ける。

コマンド入力の仕方も日本語表示もスレ違いなので、後は↓の適当なスレで訊きなおしてちょ。
その時は、どういうソフト(エディタとかブラウザとか)で化けるとか細かい状況を書くことも忘れずに。

Lindows Part 4
pc.2ch.net/test/read.cgi/linux/1065984614/l50
くだらねえ質問はここに書きこめ! part61
pc.2ch.net/test/read.cgi/linux/1067454177/l50
初心者にも優しい総合質問スレ Part61
pc.2ch.net/test/read.cgi/linux/1067437547/l50

110 名前:screen@制作中 [03/10/30 22:49 ID:I1zuwXG0]
今 screen-4.0.1 の rpm を作成しています。
私はredhat9を使っているので
redhat9 の screen.spec を参考にしながら作っています。
バージョンが上がっているので patch の整合性は問題にしないとして
screen.spec の中で以下の部分がでてくる。
%build
libtoolize --copy --force

これをやるとlogに以下のようにでてくる。
Remember to add `AC_PROG_LIBTOOL' to `configure.in'.
You should add the contents of `/usr/share/aclocal/libtool.m4' to `aclocal.m4'.

どう対応したらいいのかわからないので解る人教えて下さい。

111 名前:login:Penguin mailto:sage [03/10/30 23:06 ID:x1gj3lfq]
>>110
Google 様に聞いてみたり、ドキュメントを読んでみたり、
違うバージョンを試してみたりする事ができないような馬鹿が
無理する必要はないんじゃないですか?

112 名前:login:Penguin mailto:sage [03/10/30 23:42 ID:yTtw0JEU]
>>111
まあまあ。落ち着けよ。

>>110
Remember to add `AC_PROG_LIBTOOL' to `configure.in'.


113 名前:screen@作成中 [03/10/31 08:33 ID:Hgy94LpE]
一応完成したので、採点してくださーい。

parsley339.at.infoseek.co.jp/screen.spec.mine

114 名前:screen@作成中 [03/10/31 09:01 ID:Hgy94LpE]
rpm作成中のログもつけておきます。
ime.nu/parsley339.at.infoseek.co.jp/log5.txt

115 名前:screen@作成中 [03/10/31 09:52 ID:Hgy94LpE]
インストールテストをしたらコンフリクトしてた。
$ rpm -U --test screen-4.0.1-1.i386.rpm
file /usr/share/terminfo/s/screen from install of screen-4.0.1-1 conflicts with file from package ncurses-5.3-4
file /usr/share/terminfo/s/screen-bce from install of screen-4.0.1-1 conflicts with file from package ncurses-5.3-4
file /usr/share/terminfo/s/screen-s from install of screen-4.0.1-1 conflicts with file from package ncurses-5.3-4

早速改訂版です。
specファイル
ime.nu/ime.nu/parsley339.at.infoseek.co.jp/screen.spec.mine1
ログファイル
ime.nu/ime.nu/parsley339.at.infoseek.co.jp/log6.txt

この変更は以下を参考にしてます。
vinelinux.org/MakingRPM/node10.html

一応インストールテストはOKだったけど
ひとりでパッケージングしてると
とんでもない間違いに気づかない怖れがあるので
バッシング覚悟で公開してみました。
宜しく評価下さいますようお願いします。


116 名前:login:Penguin [03/10/31 16:26 ID:7CFvfgMW]
どこかからベースとなる .spec を持って来たんでしょ?
だったら、Initial build じゃねーだろうが。

117 名前:login:Penguin mailto:sage [03/11/01 00:15 ID:EODMVSrn]
>>115 SPEC をみて、3点ほど。
1. SOURCE0,1 のところは、SPEC ファイルをみてソースをダウンロードできるように、
 URL をちゃんと書いてほしい。たいていの場合ググればすぐみつかるんだけど
 SOURCE0: ftp://hoge/hoge/%{name}-%{version}.tar.gz みたいに。
2. mkdir -p や、install などのコマンドも、
 %{_mkdir_p} や %{_install} のようにマクロをつかったほうがいいと思う。
 (rpm --showrc で確認)
3. 問題無かったはずだけど、
 %files の %{_bindir}/* って書かれてると /usr/bin/* が削除されそうで怖い。
 他のアプリと共通のディレクトリを使う場合には、
 具体的なファイル名にしておいてほしい。



118 名前:login:Penguin mailto:sage [03/11/01 00:21 ID:oX8Ddgno]
>>117
> %files の %{_bindir}/* って書かれてると /usr/bin/* が削除されそうで怖い。

その書き方は、いろんな rpm で使われているようですが。

119 名前:login:Penguin mailto:sage [03/11/01 00:56 ID:bcJ0fjGW]
rpmのファイルリストに*が書かれるわけじゃないよ。

120 名前:screen@作成中 [03/11/01 06:30 ID:33TDV9Lc]
>>116
確かに自分の使ってるDistributionのスペックファイルを元にしているんだけど
今作ってるscreenではredhatがつけたpatchを全部はずしちゃってて
(古いscreenのバージョンに対してつけられたpatchをそのまま使う必要があるか
疑問だったから)
changelogにredhatの履歴を入れた方が整合性がくずれると思ったので入れてない。


121 名前:screen@作成中 [03/11/01 07:08 ID:33TDV9Lc]
>>117
> 1. SOURCE0,1 のところは、SPEC ファイルをみてソースをダウンロードできるように、
> URL をちゃんと書いてほしい。たいていの場合ググればすぐみつかるんだけど
> SOURCE0: ftp://hoge/hoge/%{name}-%{version}.tar.gz みたいに。
ごもっとも、早速SOUCE0については対応しました。でもSOURCE2はpamを使うために
必要なファイルで(出展はredhatのscreen)どこかで個別に配付されていないから
ちょっと書きようが無いかも。

> 2. mkdir -p や、install などのコマンドも、
> %{_mkdir_p} や %{_install} のようにマクロをつかったほうがいいと思う。
> (rpm --showrc で確認)
これは初めて知った。情報ありがとう。今後取り組もうと思います。

> 3. 問題無かったはずだけど、
> %files の %{_bindir}/* って書かれてると /usr/bin/* が削除されそうで怖い。
> 他のアプリと共通のディレクトリを使う場合には、
> 具体的なファイル名にしておいてほしい。
まあ書くのが楽だから*で良いと思う。以下のサイトでも解説されてるしね。
vinelinux.org/MakingRPM/node11.html

122 名前:login:Penguin mailto:sage [03/11/01 13:16 ID:oX8Ddgno]
>>120
何の整合性がくずれるとおっしゃりたいのですか?

ふつーのディストリビューションなら、
- drop all patches
と書くわけです。

元ネタになった .spec を書いた人々に失礼では?
とりあえず、整合性とは何なのか教えてね。

123 名前:screen@作成中 [03/11/01 15:45 ID:33TDV9Lc]
>ふつーのディストリビューションなら、
>- drop all patches
>と書くわけです。

ディストリビューションなら書く必要が在ると思うけど
私は個人ででっちあげたspecファイルに
redhatのchangelogを載せる方が悪いと思ったのよ。


emacsでいちから作成したspecファイルは%changelog部分に
Initial build と勝手に書いちゃうからね。
もちろんsrc.rpmをインストールして
src.rpmに含まれていたspecファイルを変更したのなら
%changelogも追記していけば良いと思うけど。
今回はいちからspecファイルを書いてます。

まあ整合性とういうのは
私の書いたspecファイルはredhatというディストリビューションに
なんら関係(責任)のないものだっと理解しちょうだい。












124 名前:117 mailto:sage [03/11/01 22:01 ID:TJpF1osf]
>>123
>私は個人ででっちあげたspecファイルに
>redhatのchangelogを載せる方が悪いと思ったのよ。
>私の書いたspecファイルはredhatというディストリビューションに
>なんら関係(責任)のないものだっと理解しちょうだい。

ディストリに正式に採用されてるわけでもないから、それでいいと思う。
 Release 番号に独自の文字使う他に、
 Vender 、Packager 書いて署名して って方法で私はやってる。
 #たぶんだれも使ってないけど。(笑)

spec そのものには特にツッコミ入らなかったみたいだし。完成おめでとう。
#今後のソースの更新にあわせたバージョンアップとかもがんばってください。

125 名前:login:Penguin mailto:sage [03/11/01 23:38 ID:oX8Ddgno]
公開する場合は問題でしょう。

126 名前:screen@作成中 [03/11/02 00:05 ID:YinYUYa6]
>>125
>公開する場合は問題でしょう?

redhatが問題だっていってたの?
それならchangelogの変更ぐらいいくらでもするけど
123でも言ったようにchangelogにredhatの名前をだすほうが
redhatは迷惑に思うんじゃないかな?

ここにspecファイルを公開したのは
私の作ったspecファイルを自分以外の誰かに評価してもらいたかったからで
redhatのspecファイル丸写しだったらわざわざここで評価してもらう必要はないです。




127 名前:login:Penguin mailto:sage [03/11/02 00:12 ID:q7g2V3x7]
RedHat に迷惑がかかるなんてことはありえない。

changelog の先頭に最終更新者の名前を書くという慣行があるわけだから、
誰がいじったパッケージかは自明なわけです。

rh な rpm をバラして patch を drop したと聞けば、
派生物であるという認識しかできませんよね?
なにか解釈間違ってますか?



128 名前:screen@作成中 [03/11/02 00:21 ID:YinYUYa6]
patchを落しただけじゃないから
わざわざここで評価してもらってたの


129 名前:login:Penguin mailto:sage [03/11/02 02:22 ID:eRDNG3h9]
つか、changelogなんて著作権表示じゃないんだから
削ったって問題ないにきまってんじゃん
まぁ、有った方がわかりやすいけど
長いとウザイし


130 名前:login:Penguin mailto:sage [03/11/02 02:48 ID:SJzd4yuw]
screen@作成中は"Change"したわけじゃないんだろ?
ChangeしてないのにChangeLogがあったらおかしいだろが。

131 名前:97 mailto:sage [03/11/09 19:49 ID:hOQWFN6N]
99さんの方法でうまくいきましたので報告します。

%prep
echo "%{__find_requires} | egrep -v 'lib(xpcom|nspr4|plc4|plds4).so'" > %{_tmppath}/find-requires-without-gecko
chmod +x %{_tmppath}/find-requires-without-gecko
%define __find_requires %{_tmppath}/find-requires-without-gecko
%setup -q

132 名前:login:Penguin [03/11/14 06:43 ID:mSK1q7Vj]
rpmを作っているとたまにsbitをたてることがあるんだけど
もちろん一般ユーザーではできません。
こんなときルートでrpmを作るしかないのかな?

133 名前:login:Penguin mailto:sage [03/11/14 12:05 ID:QuM3c/XV]
>>132
sbit についてよく分かってないけど。
sbit をたてる処理を
[pre,post]install script とかに書いてもだめですか?

134 名前:login:Penguin mailto:sage [03/11/14 14:55 ID:OaQ/asUo]
>>132
%files セクションで %attr を使って
%attr(4711,qmailq,qmail) /var/qmail/bin/qmail-queue
みたいにする。これなら一般ユーザで rpm を使っても
インストールした時に sbit がたちます。

135 名前:132 [03/11/15 23:34 ID:k6c00/SP]
>>134
無事ユーザーでsbitを立てられました。
ありがとうございました。

>>133
そのやりかたでもできそうな気がするけど
とりあえず Making RPM に >>134 まんまの説明があったので
134のやり方でやってみました。
情報ありがとうね。


136 名前:login:Penguin [04/01/09 23:18 ID:V3n+96H0]
保守

137 名前:login:Penguin [04/01/11 09:09 ID:B+ozCSbr]
こんなツールもあります。RPMをSPECを使わずに作成できる。
asic-linux.com.mx/~izto/checkinstall/

解説サイト
www.atmarkit.co.jp/flinux/rensai/linuxtips/530mkrpmfs.html

ただし、このツールもまだまだ発展途上って感じです。これからに期待。
簡単なツールのRPMならこれで大丈夫だと思うけど、複雑なツールのrpm作成は
まだまだですなぁ。



138 名前:login:Penguin [04/01/11 23:13 ID:XkTcZwk7]
RPMについて (Windows To Linux移行支援プロジェクト)
ttp://win2linux.sourceforge.jp/goodapps/RPM.html

これの「一般ユーザでリビルドできるようにする」のところでmkrpmdir
というコマンドが使われているが、これはVineの独自パッケージ(vutils)
に含まれているもので、他のdistro使っている人はそこんとこ要注意ね。

ちなみに同名のコマンドがpoldekというツールにも含まれている。
ttp://team.pld.org.pl/~mis/poldek/

139 名前:sage [04/01/27 12:49 ID:sR4svUSa]
バイナリrpmからソースrpmってできないですよね?
普通に考えたらできないのはわかるのですが、
もしもそんなことをご存知の方がいたら教えてください。

140 名前:login:Penguin mailto:sage [04/01/27 13:14 ID:DOFDsVK8]
>>139
pc.2ch.net/test/read.cgi/linux/1074773471/462

141 名前:login:Penguin [04/01/27 16:01 ID:8Y1SuBnZ]
だれか、GworkspaceとGNUMailをrpmで作ってください。

142 名前:login:Penguin mailto:sage [04/01/31 11:32 ID:ZaQKaUKE]
RPMパッケージを作りたいのでredhat PRESSのRed Hat RPM Guideを買おうかと思っています。
この本はRPMパッケージを作りたいだけの私にとって買いなのでしょうか?



143 名前:login:Penguin mailto:sage [04/01/31 15:11 ID:GZJlsdhW]
>>142 読んでみたことないけど、値段が高すぎないか?
悪い本ではなさそうだけど、パッケージ作るのにはそれほど必要ないことも結構書かれてそうだし。
ttp://bookweb.kinokuniya.co.jp/htm/4797324937.html
3 プログラミングRPM とか、4 RPMを拡張する とか必要?

私はこれ持ってる。「Redhat Package Manager Manual & Reference」
ttp://linux.ascii24.com/linux/bookstore/data/book628512.html
ttp://www.shuwasystem.co.jp/cgi-bin/detail.cgi?isbn=4-87966-976-8

時々調べるのに使う感じでそれほど読み込んではいない。
改訂されてるかどうかしらないけど、初版が 2000年2月27日 なので、
多少古いのかも。rpm Version 3 で書かれてる。

両方あったら、買う前に手に取って読み比べることをお薦めします。
「本」で欲しいってのじゃなければ、>>1 のリンク先とか、実際の src.rpm も役に立つし。

144 名前:142 mailto:sage [04/01/31 18:39 ID:ZaQKaUKE]
RPM Version3とVersion 4でのSPECファイルの内容に違いはあるのでしょうか?
あまりないのでしたらネットでの情報で十分そうです。

145 名前:login:Penguin mailto:sage [04/02/18 22:22 ID:/tGKsCje]
>>139

Thanks. 修正しときました。
ttp://win2linux.sourceforge.jp/goodapps/RPM.html

146 名前:login:Penguin mailto:sage [04/02/18 22:24 ID:/tGKsCje]
>>145

139ではなくて138でした。失礼。

147 名前:login:Penguin mailto:sage [04/02/18 23:04 ID:wjiGYa0h]
>>145
Vine の mkrpmdir は
mkrpmdir /home/username/rpm ではなく、mkrpmdir /home/username にしないと、
/home/username/rpm/rpm/SPECS とかが作られてしまう。

%_topdir が ~/rpm なら mkrpmdir ~ でいい。



148 名前:login:Penguin mailto:sage [04/02/19 21:01 ID:vAqWJAj0]
>>147

たびたび済みません。

149 名前:login:Penguin [04/03/05 17:12 ID:2SmG2apn]
例えば hoge.rpm があるとして,

rpm -ivh hoge.rpm

すると,何もメッセージを出さずにすぐにプロンプトを出します.
# インストールはまったくされていません

rpm -ivvh hoge.rpm

とすると

D:found 0 source and 0 binary packages

とでます.

ところが hoge.rpm に異常はなさそうです.

hoge.rpm をどんな rpm ファイルにしても
まったく同じ反応です.

なぜなのでしょうか?


150 名前:login:Penguin mailto:sage [04/03/05 17:19 ID:e9JyJ572]
>>149
自作 rpm じゃないなら
↓かディストリのスレで。

くだらねえ質問はここに書き込め! Part71
pc.2ch.net/test/read.cgi/linux/1077690104/

151 名前:login:Penguin mailto:sage [04/03/06 00:11 ID:Yf9cOktg]
kconfigure上でcheckinstallって使えますか?

152 名前:login:Penguin [04/05/16 03:39 ID:q/JNf/wU]
スレ違いかもしれない質問

rpmをbuildすると、buildした環境で動作するのに必要なライブラリを
Requires:に追加しているようなんですが、ここに入れさせたくない
場合はどうすればいいのでしょう?

具体的には、/lib/libsafe.so を入れた環境でbuildしたバイナリrpmが
libsafe.soが依存ファイルとなっているのを阻止したいです。
あと、/usr/local以下にインストールしたプログラムなどが依存ファイルと
して挙げられる場合もあり、それも阻止したいなと。

153 名前:login:Penguin mailto:sage [04/05/16 07:01 ID:yjh8d7t+]
>>152
AutoReqProv: no


154 名前:login:Penguin [04/05/16 15:33 ID:q/JNf/wU]
>>153
ありがとうございます。
全てチェックしなくなるようですが、当面、エラーを
黙らせるのにはこれで行きます。

155 名前:login:Penguin [04/06/03 01:06 ID:nPQI0aZ4]
お聞きしたいのですが、
WEBサーバのapacheをcheckinstallでrpm化させたかったのですが、
以下のエラーがその願いを遮ります。
解決策をご教授頂けないでしょうか?
よろしくお願いします。

OS:RedHat9
対象:httpd-2.0.49

Building file list...OK
cat: /var/tmp/FeCEJOLmEYSOfejoCeHc/libdirs: そのようなファイルやディレクトリはありません

**************************************
**** RPM package creation selected ***
**************************************

Building RPM package... FAILED!

*** Failed to build the package

Do you want to see the log file? [y]: y
作成中ターゲットプラットフォーム: i386
Building for target i386
Processing files: httpd-2.0.49-1
致命的なエラー: getGname: too many gid's

156 名前:login:Penguin mailto:age [04/06/08 13:00 ID:wwdhZncM]
>>155
悪いことはいわんから、オフィシャルなRHのspecをもらってきて、それを土台に好きに編集した
方が、checkinstallと格闘するよりも楽だぞ。

157 名前:login:Penguin mailto:sage [04/06/08 15:43 ID:6tyORPCg]
>>100
alien ー slackware,plamo 流の tgz から バイナリrpmを作成するツール





158 名前:login:Penguin mailto:sage [04/06/09 11:37 ID:7Bbb7z74]
156がいい事言った。

159 名前:login:Penguin mailto:sage [04/06/26 04:42 ID:Fau6zZtP]
>>145
赤星さんですか?

160 名前:login:Penguin mailto:sage [04/06/30 08:44 ID:v4g+Ho84]
hoge って rpm をつくっていて、他の rpm に含まれてるファイルをいじる必要があって、
%post と %preun で /usr/bin/patch が必要になりました。

それで、PreReq: patch と書いたけれど、
rpm -e hoge patch とすると hoge,patch の順でアンインストールされるけど、
rpm -e patch hoge とすると patch が先にアンインストールされてしまって、
var/tmp/rpm-tmp.34596: /usr/bin/patch: そのようなファイルやディレクトリはありません
となって、preun での処理が失敗します。

インストール時は hoge patche でも patch hoge でも patch が先にインストールされて問題ありません。

アンインストール時の順番に影響するものってなにかありますか?
PreReq: patch に加えて、Requires: patch と書いてみてもダメでした。
環境は Vine2.6r4 で、apt-get remove でも patch が先になってしまいました。

161 名前:login:Penguin [04/07/06 22:24 ID://KMVL63]
RedHat Linux9.0
PostgreSQL 7.4.3
ftp://ftp.sra.co.jp/pub/cmd/postgres/7.4.3/postgresql-7.4.3.tar.gz

どなたかお願いしますm(_ _)m



162 名前:login:Penguin mailto:sage [04/07/06 23:16 ID:smyET8Ni]
>>161

どなたかお願いします、て
引き取ってくださいという意味?

163 名前:login:Penguin [04/07/06 23:24 ID://KMVL63]
>>162
いや、作ってください、お願いしますって意味

164 名前:login:Penguin mailto:sage [04/07/06 23:31 ID:Q9/wR7+I]
>>163
RedHat の PostgreSQL の src.rpm はどこにある?
古いバージョンの SPEC を書き直せばなんとかなるんじゃない?

165 名前:login:Penguin [04/07/06 23:40 ID://KMVL63]
>>164
cgi2.html.ne.jp/~mini/postgresql_spec.zip

RHL9のCD中のpostgresql-7.3.2-3.src.rpmから取り出したspecファイルです。
今、中身を見てるんですが、さっぱりで・・・

166 名前:login:Penguin mailto:sage [04/07/07 03:17 ID:FfF3H9jC]
>>165
Fedora Core 2 の postgresql-7.4.2 なら、SPEC ファイルの
修正なしで Redhat 9 で RPM を作ることができました。
こちらでまず試してみてはどうですか?

167 名前:login:Penguin [04/07/07 03:53 ID:9lTBkyff]
>>166
今試してたんだけど、なぜかtcl-develとe2fsprogs-develが無いとダメってエラーが(;´Д`)
%{!?tcldevel:%define tcldevel 1} → %{!?tcldevel:%define tcldevel 0}
%{!?kerbdir:%define kerbdir /usr} → %{!?kerbdir:%define kerbdir /usr/kerberos}
に修正して再試行中。。

%{?build89:%define kerbdir /usr/kerberos}となってるんだけど、正常に認識してないっぽい(;´Д`)
修正無しの状態だと、

+ gcc -O2 -g -pipe -march=i386 -mcpu=i686 -I/usr/include/et -fpic -shared -o _pgmodule.so -I/usr/incl
ude/python2.2 -I../src/interfaces/libpq -I../src/include -I/usr/include -L../src/interfaces/libpq -lp
q pgmodule.c
In file included from /usr/include/openssl/ssl.h:179,
from ../src/interfaces/libpq/libpq-fe.h:33,
from pgmodule.c:31:
/usr/include/openssl/kssl.h:72:18: krb5.h: No such file or directory

みたいなエラーになるし・・



168 名前:167 [04/07/07 04:06 ID:9lTBkyff]
訂正

先頭に
%define build9 1
を追加して、
%{?build8:%define tcldevel 0} → %{?build89:%define tcldevel 0}
にして再試行中(;´Д`)

169 名前:167 [04/07/07 04:22 ID:9lTBkyff]
なんか知らないけど、うまくいきました。
ありがとうございましたm(_ _)m

170 名前:login:Penguin mailto:sage [04/07/10 03:17 ID:/SaxF3E8]
%exclude っていうのを使うと、どういう利点があるですか?
エライ人、教えてつかーさい。

171 名前:login:Penguin mailto:sage [04/07/10 04:50 ID:Kc8CkSdp]
>>170
詳しく知らんが
excludeつーくらいだからそれを除く、ってことじゃないの?

%file /2ch/*
%exclude /2ch/uma-

みたいに使うのかな?
ちゃんと知らないので適当に答えてみた


172 名前:login:Penguin mailto:sage [04/07/16 11:56 ID:25I0vw3T]
>>170,171
%exclude マクロが定義されていなかったので、それを除くとして作りなおした事がある。

> %file /2ch/*
> %exclude /2ch/uma-

%file /2ch/*
で、すませると支障があるときに使う。

このような場合、%exclude マクロがないバージョンでのrpmに対応させるためには、
必要なものを全部書くか、
%install セクションで少し工夫しなければならないが、
%excludeマクロをうまく使うと、可視性が良くなって、わかりやすくなる。




173 名前:login:Penguin mailto:sage [04/07/21 17:35 ID:1y9jngOg]
>>145
s/RedHat Package Manager/RPM Package Manager/
# 少なくとも今は。

174 名前:login:Penguin [04/08/16 15:27 ID:icY8qRIB]
specファイルのSourceやPatchのURLからファイルをダウンロードする
ようなツールはありませんか?
rpm --evalとかじゃできないっぽいので…。

175 名前:login:Penguin [04/08/16 17:37 ID:bUzmG/81]
>>174
よくわからんが、そのspecを取り出したsrc.rpmの中に入っているよ。
それともspecだけを入手したの?

176 名前:login:Penguin mailto:sage [04/08/17 02:08 ID:hWPoBCyJ]
nosrc.rpm の事かな?

177 名前:login:Penguin mailto:sage [04/08/17 06:38 ID:QB1SEoak]
>>175-176
自作のspec数十個あって、1つ1つ開いてマクロを展開しながら
ダウンロードするのが辛いので。
あと、specをそのまま他の人に渡してtarballは各自で落として
もらいたいってのもあります。



178 名前:login:Penguin mailto:sage [04/08/17 06:58 ID:PR1Kzzvk]
>>177
> あと、specをそのまま他の人に渡してtarballは各自で落として
こっちは受けとった方の話だよね。自分ならspecもらえるだけで感謝するけど。
ダウンロードなんか大した手間じゃないし。

> 自作のspec数十個あって、1つ1つ開いてマクロを展開しながら
specまで書いておいて、どしてsrc.rpm作んないの?
src.rpmにしとけばtarballも一緒にしまい込めるでしょ。


179 名前:login:Penguin mailto:sage [04/08/17 13:04 ID:QB1SEoak]
>>178
利用者がsubversionのリポジトリからチェックアウトして
ビルドすることを想定しています。
現時点で90近いspecファイルがあるので、1つずつ手動で取ってくるのは
現実的じゃありません(全specをビルドするのが前提)。

Mononga LinuxのOmoiKondaraが一番やりたいことに近そうなので、
これについて調べてみます。

回答してくれた方、ありがとうございました。

180 名前:login:Penguin [04/09/25 09:45:36 ID:2FJYePtf]
くだ質で回答を得られなかったので、こちらで聞きます。
pstoeditをソースからのインストールでは問題がないが、rpmにすると実行ファイルが共有ライブラリを読まないため
困っています。make installの際に共有ライブラリへのリンクを張り直すようなのですが、rpmの場合はどうやってパ
ッケージのインストールの後にリンクを張り直したらよいか分かりません。
$ /sbin/ldconfig -p |grep libp2edrvstd.so
libp2edrvstd.so.0 (libc6) => /usr/lib/pstoedit/libp2edrvstd.so.0
libp2edrvstd.so (libc6) => /usr/lib/pstoedit/libp2edrvstd.so
という状態で
$ /usr/bin/pstoedit -help |grep libp2edrvstd.so
を実行しても何もヒットしません。しかし、rpmにパッケージングせずにソースからインストールした場合やrpmのビ
ルドした場所では共有ライブラリが読み込まれます。
$ rpm/BUILD/pstoedit-3.33/src/pstoedit -help |grep libp2edrvstd.so
とすると
idraw: Interviews draw format (EPS) (/home/hoge/rpm/BUILD/pstoedit-3.33/src/.libs/libp2edrvstd.so)
[以下略]
のように期待通りに表示されます。
pm/BUILD/pstoedit-3.33/src/pstoeditを/usr/bin/pstoeditにインストールして、/usr/lib/pstoedit/libp2edrvstd.so
を読み込ませるようにするにはどうすればよいのでしょうか。



181 名前:180 [04/09/25 10:12:58 ID:2FJYePtf]
続きです。環境はVine3.0です。SuSEなど他のディストリや私家版のpstoeditのspecを参照して
見ましたがこのあたりの問題は無視しているようです。そのため、対応形式がbuilt-inのみ(psf.
ps, debug, dump, gs, ps2ai)になっています。


182 名前:login:Penguin mailto:sage [04/09/25 10:32:51 ID:B6vG4xvt]
>>180
まずはspecの中身を晒さないと。


183 名前:180 [04/09/25 10:47:05 ID:2FJYePtf]
>>182ありがとうございます。全てを貼ると冗長なので要点だけ。
Name: pstoedit
Version: 3.33
Source0: home.t-online.de/home/helga.glunz/wglunz/pstoedit/%{name}-%{version}.tar.gz
Source1: home.t-online.de/home/helga.glunz/wglunz/plugins/pstoedit_linux_plugins.tgz
[...]
%package devel
[...]
%prep
%setup -a 1
%build
%configure
%{__make}
%install
%makeinstall
%{__mkdir_p} %{buildroot}%{_mandir}/man1
%{__install} -m 644 doc/%{name}.1 %{buildroot}%{_mandir}/man1
%{__install} -m 775 lib/pstoedit/plugins_linux.so %{buildroot}%{_libdir}/pstoedit
for i in %{buildroot}%{_libdir}/*.la %{buildroot}%{_libdir}/pstoedit/*.la
do cp -p $i $i~
sed s:%{buildroot}::g <$i~ >$i
rm $i~
done


184 名前:180 [04/09/25 10:48:28 ID:2FJYePtf]
%post
/bin/grep -q /usr/lib/pstoedit /etc/ld.so.conf || \
echo /usr/lib/pstoedit >> /etc/ld.so.conf
/sbin/ldconfig

%postun
%{__perl} -p -i -e 's|/usr/lib/pstoedit||' /etc/ld.so.conf
/sbin/ldconfig

%files
[...]
よろしくお願いします。


185 名前:login:Penguin mailto:sage [04/09/25 16:18:10 ID:KeI0AADE]
>>180-181 >>183-184
> make installの際に共有ライブラリへのリンクを張り直す
ってのが具体的にどんなことやってるのかを読み解いて
%makeinstall ってところを書き換えて処理するんじゃない?

普通に make install やったらだめだと思う。

186 名前:180 [04/09/26 02:18:27 ID:9WttgLur]
>>185 ありがと。そうなんだけど、ログから類推して
/bin/sh ../libtool --mode=link g++ -g -o libp2edrvstd.la -rpath /usr/lib/pstoedit drvlwo.lo drvrib.lo drvrpl.lo drvdxf.lo
drvjava.lo drvjava2.lo drvpdf.lo drvkillu.lo drvtext.lo drvsk.lo drvmpost.lo drvmma.lo drvlatex2e.lo drvpic.lo drvhpgl.lo
drvtk.lo drvgnplt.lo drvtgif.lo drvfig.lo drvidraw.lo drvsampl.lo -L. libpstoedit.la
とか


187 名前:180 [04/09/26 02:19:20 ID:9WttgLur]
g++ -shared -nostdlib /usr/lib/gcc-lib/i386-vine-linux/3.3.2/../../../crti.o /usr/lib/gcc-lib/i386-vine-linux/3.3.2/crtbeginS.o
.libs/drvlwo.o .libs/drvrib.o .libs/drvrpl.o .libs/drvdxf.o .libs/drvjava.o .libs/drvjava2.o .libs/drvpdf.o .libs/drvkillu.o
.libs/drvtext.o .libs/drvsk.o .libs/drvmpost.o .libs/drvmma.o .libs/drvlatex2e.o .libs/drvpic.o .libs/drvhpgl.o .libs/drvtk.o
.libs/drvgnplt.o .libs/drvtgif.o .libs/drvfig.o .libs/drvidraw.o .libs/drvsampl.o -Wl,--rpath -Wl,/usr/lib/pstoedit
-L/usr/lib/gcc-lib/i386-vine-linux/3.3.2/../../.. -L/usr/lib/gcc-lib/i386-vine-linux/3.3.2 ./.libs/libpstoedit.so -lstdc++
-lm -lc -lgcc_s -lc /usr/lib/gcc-lib/i386-vine-linux/3.3.2/crtendS.o /usr/lib/gcc-lib/i386-vine-linux/3.3.2/../../../crtn.o
-Wl,-soname -Wl,libp2edrvstd.so.0 -o .libs/libp2edrvstd.so.0.0.0
(cd .libs && rm -f libp2edrvstd.so.0 && ln -s libp2edrvstd.so.0.0.0 libp2edrvstd.so.0)
(cd .libs && rm -f libp2edrvstd.so && ln -s libp2edrvstd.so.0.0.0 libp2edrvstd.so)
これをspecに書くのではなく、もっとスマートな方法はないでしょうか。libp2edrvstd.so以外にも共有ライブラリ
がたくさんあるので。。




188 名前:login:Penguin [04/09/29 05:43:46 ID:6ffuRL/D]
>>181
> 続きです。環境はVine3.0です。SuSEなど他のディストリや私家版のpstoeditのspecを参照して
> 見ましたがこのあたりの問題は無視しているようです。そのため、対応形式がbuilt-inのみ(psf.
> ps, debug, dump, gs, ps2ai)になっています。

Fedora Core 2で自家製ビルドですが、built-in以外にも対応してるようです。

> $ /usr/bin/pstoedit -help | grep libp2edrvstd.so
> ...
> idraw: Interviews draw format (EPS) (/usr/lib/pstoedit/libp2edrvstd.so)
> fig: .fig format for xfig (/usr/lib/pstoedit/libp2edrvstd.so)
> xfig: .fig format for xfig (/usr/lib/pstoedit/libp2edrvstd.so)
> ...

specの中では特に何も変わったことはしてません
(基本的に%configure, make, %makeinstallのみ)。

rpmでビルドした段階では、>>180と同様にビルドディレクトリ内のライブラリを指してます。

> $ rpm/BUILD/pstoedit-3.33/src/pstoedit -help | grep libp2edrvstd.so
> ...
> idraw: Interviews draw format (EPS) (/home/foo/rpm/BUILD/pstoedit-3.33/src/.libs/libp2edrvstd.so)
> fig: .fig format for xfig (/home/foo/rpm/BUILD/pstoedit-3.33/src/.libs/libp2edrvstd.so)
> xfig: .fig format for xfig (/home/foo/rpm/BUILD/pstoedit-3.33/src/.libs/libp2edrvstd.so)
> ...

%makeinstallがよきに取りはからってくれるんでしょうかね?


189 名前:180 [04/09/29 12:03:46 ID:ELXbyaWE]
>>188
ありがと。FC2のrpmのバージョンは幾つになっていますか?
Vine3.0はrpm-4.0.5-1vl8です。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<158KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef