RPMの専門家に助けを求めています。
パッケージA
に依存するRPMパッケージB
があるとします。 RPM A
の仕様にはRequires:B
があり、autoprov
とautoreq
が有効になっています。
RPM A
をcentos6.5マシンにRPM version 4.8.0
、yum install A
でインストールすると:
A
をインストールし、次にB
をインストールします。B
のインストールが部分的に失敗する可能性があります。つまり、依存関係A
のインストールが失敗した場合でも、B
がインストールされます。これは予想される動作ですか? (B
の前にA
をインストールするべきではありませんか?)
バージョン(el5など)間で同じ動作が期待できますか?
依存関係がインストールされることを期待していました前メインパッケージがインストールされます。依存関係の1つがインストールに失敗した場合、メインパッケージのインストールが妨げられます。
私の要件を達成するための他の手段はありますか?
ありがとう。
Requires
は、実行時にこの依存関係が必要であることを示しています。たとえば、Requires
をfirefox.spec
に入れると、ユーザーが/usr/bin/firefox
を実行したときにこの依存関係がインストールされます。
Rpmスクリプトレットの実行中に使用可能にする必要がある場合は、必要なフェーズを指定する必要があります。例えば:
Requires(pre): Perl
複数のセクションで必要な場合は、数回リストする必要があります。例えば:
Requires(pre): Perl
Requires(preun): Perl
詳細については、 http://rpm.org/api/4.4.2.2/tsort.html を参照してください。