私はrpmsの構築が初めてで、OSのバージョン(rhel5やrhel6など)に応じて2つの別々のファイルセットをインストールするrpmを構築する必要があります。可能ですか?それではどうですか?そうでない場合は、rpm-a-rhel5.rpmとrpm-a-rhel6.rpmなどの2つの別々のrpmを作成する必要があるとします。しかし、rpm-a-rhel6.rpmをrhel5にインストールすることはできませんが、その逆もどうやって保証できますか? Case1 / case2の仕様ファイルで何を確認する必要がありますか?アイデアがあればアドバイスをお願いします。
ありがとうございます。
答え1
RPM仕様ファイルには、バージョンによって完了またはインストールされる内容が変更されるRPMを構築できる条件と変数があります。
%if 0%{?rhel} = 6
Requires:
%endif
しかし、rpmbuild
走っても効果は減りません。を使用する必要がありますmock
。 fedoraのrpmガイドを読むことをお勧めします。
https://fedoraproject.org/wiki/How_to_create_an_RPM_package
他の質問については、ディストリビューションベースのRPMのインストールを防ぐことはできません。依存関係のブロックを引き起こすことは、通常、パッケージの要件によって異なります。これを行うための依存関係:Requires: redhat-release >= 6.3
。