問題タブ [rpmbuild]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Distutils、古い rpm、およびカスタマイズされたスペック ファイル
昨日、ようやくプログラムを Fedora 14 の RPM にパッケージ化しました。CentOS 4.8 ボックスでも同じようにビルドするのは簡単だと思いました。古いバージョンの rpm と distutils にはいくつかの制限があることがわかりました。
基本的な問題は、Python 2.7 の distutils が、スクリプトを指定できる「--post-install」というオプションをサポートしていることです。スクリプトが含まれており、yum または rpm でインストールすると実行されます。すべてが素晴らしいです。ただし、Python 2.3 には --post-install オプションがありません (実際には RPM では使用できません)。とにかく、.spec ファイルの "%install" セクションに追加するだけです。だから私はRPM構築プロセスを開始します
python setup.py bdist_rpm --spec-only
私の.specを作成します。それを編集して、スクリプトを .spec に貼り付けます。次に、ソースをビルドします
python setup.py bdist_rpm --source-only
ここから問題が発生し始めます。distutils は、次のサブディレクトリ ./build/bdist.linux-i686/rpm/ を作成します。その中にSPECS/netinfo.specというフォルダがあります(私のプログラムはnetinfoと呼ばれています)。ただし、作成したばかりのカスタム .spec は使用されません。生成された .spec を使用する必要があるため、これは奇妙です。デフォルトの .spec でビルドしようとすると、予想どおりスクリプトが RPM に含まれません。それをカスタム .spec で上書きしても、まだ機能しません。すべてのコマンドの .spec を再作成するようなものです。
bdist_rpm にはさまざまなコマンドがあり、次のコマンドで一覧表示できます。
使用する .spec ファイルを指定できるオプションを見つけることを期待していました。しかし、Python 2.3 と 2.7 にはオプションがありません。
distutils でカスタム .spec ファイルを使用するには、簡単な方法が必要です。これを指定する方法を知っている人はいますか?
ありがとう、
linux - RPMパッケージのいくつかのグループ
単一のrpmパッケージが複数のグループに属することは可能ですか?
スペックファイルでは、パッケージグループを設定できます。
グループ:システム環境/ベース
私が必要としているのは、このパッケージにいくつかのグループを設定できるようにすることです(のようにSystem|Util|MyCompanyName
)-それらはパッケージに割り当てられたタグのようになります。
パッケージがインストールされたら、次のようにクエリします
また
どちらの場合も、自分のパッケージ(およびこのグループに属する他のパッケージ)が表示されます。
編集:
多くのパッケージがMyCompanyNameグループに属している可能性がありますが、インストールできるのはごくわずかです。パッケージをLinuxシステムパッケージと区別する方法が必要です-グループ名を使用してそれを行うことを計画していました
何Group:
行か入れてみましたが、最後の1行しか使っていません。その後のすべてGroup:
が1つの文字列として扱われているようで、それらを分割する方法が見つかりませんでした。
私が考えることができる別の解決策は、このようなものを入れてPROVIDES
からクエリすることです
しかし、私はそれがこのように好きではありません。
要求された機能を実現する他の方法はありますか?
linux - デスクトップにアイコンをインストールするrpm
FedoraGnomeでは...
rpmで.desktopファイルを使用して、GUIソフトウェアをgnomeアプリケーションメニューに正常に配置しました。
rpmをインストールするときにアイコンをgnomeデスクトップにも配置する方法があるかどうか疑問に思っていますか?
アップデート:
これで、 in ...でrpmbuild
rpmbuildを正常に使用できるようになり、その過程で( rpmをインストールする前に)デスクトップにアイコンが表示されます。何か間違ったことをしています。助言がありますか?xdg-desktop-icon
%install
これが私のスペックファイルの関連部分です:
linux - パッケージの rpm をビルドする
別の rpm をインストールする rpm を作成する方法、このための仕様ファイルを見つける方法を教えてください。または、そのような仕様ファイルを構築するためのチュートリアルを示してください。
rpmbuild - RPMBUILD//ソース
barnyard2-1.9のRPMを作成しようとしていますが、試行するとこのエラーが発生します。これらは、rpmbuild出力の最後の数行です。
RPMビルドエラー:
「/home/snort/rpm/barnyard2-1.9//SOURCES/barnyard2.config」行の「//」がどこにあるのかわかりません。rpm-tmp.66176ファイルの上位数行は次のとおりです。
何か案は?
rpm - rpmbuild エラー: インストール済み (パッケージ化されていない) ファイルが見つかりました
とりわけ、Apacheをインストールするためのカスタムrpmを構築しています。ビルドしようとすると、上記のエラーが発生し、/httpd-2.2.17/ とそのすべてのサブファイルが一覧表示されます。
私の知る限り、これはビルド ディレクトリなので、パッケージ化しないでください。これを修正するために、 rm -rf /httpd-2.2.17 を追加しましたが、それは役に立たないようです。
%files セクションに追加したくありません。完了時にシステムにインストールされるべきではないためです。
誰かが私が間違っていることを知っていますか?
Apache は 2 番目のソース ファイルであり、最初のソース ファイルはコンパイルされない tar ファイルであることに注意してください。
rpm - RPM 依存関係を「次のいずれか」として指定する
社内パッケージ用の RPM 仕様ファイルを開発しています。このパッケージは、Fedoralibuuid
のパッケージとして入手できる に依存していますが、標準の RPM リポジトリには CentOS 5 用のパッケージはありません。CentOS への依存関係は、e2fsprogs-devel 開発 RPM (インストールと関連するヘッダー) で満たすことができます。RPM が に依存することを指定したいと思います。パッケージは、RPM のインストール中に Fedora にインストールされますが、CentOS へのインストール中にインストールされます。RPMスペックファイルで依存関係を「libuuidまたはe2fsprogs-develのいずれかをこの順序で」指定する方法はありますか?libuuid
libuuid
e2fsprogs-devel
libuuid
libuuid
libuuid
e2fsprogs-devel
rpm - rpmbuild%{dist}がCentOS 5.5で定義されていませんか?
RPMスペックファイルのタグを使用して、 Fedora Core(例)、CentOS 5(例)、AmazonのLinuxAMI間の%{dist}
ディストリビューション固有の依存関係を提供しようとしています。fc12
el5
と
残念ながら、%{dist}
CentOS 5.5で定義されていないようで、CentOS 5.5に一致するディストリビューション固有の条件が見つかりませんでした(一致すると思いましel5
たが、そうではありません)。このチケット%{dist}
は2008年にCentOSで欠落していることを報告しましたが、2009年以降更新されていません。
CentOSで定義するにはどうすればよい%{dist}
ですか?また、CentOS 5と一致させるためにどの条件を使用する必要がありますか?RPMの達人は私を正しい方向に向けることができますか?
rpm - 自己解凍型の実行可能ファイルからrpmをどのように作成しますか?
.binファイル(Linuxの自己解凍型バイナリファイル)があります。たとえば、installme.binです。
それからRPMを作りたいです。
最も簡単な戦略は何でしょうか?
%post ./
installme.binを含むほとんど空のスペックファイル
それはうまくいくでしょうか?
よろしくお願いします