私は仕様ファイル (foo.spec) に取り組んでいます。このファイルをビルドすると、foo-1-1.i386.rpm (メイン プログラム) とlibfoo-1-1.i386.rpm (必要なライブラリ ファイル)。foo.spec ファイルには、foo には同じバージョンとリリース レベルの libfoo が必要であると記載されています。
Requires: libfoo = %{version}-%{release}
foo-1-1 は次のようにインストールするとうまくいきます:
rpm -ivh libfoo-1-1.i386.rpm
依存ライブラリをインストールし、次に:
rpm -ivh foo-1-1.i386.rpm
ただし、新しいバージョン (foo-2-1) へのアップグレードは、ライブラリに依存しているため機能しません。
$ rpm -Uvh libfoo-2-1.i386.rpm
error: Failed dependencies:
libfoo = 1-1 is needed by (installed) foo-1-1.i386
$ rpm -Uvh foo-2-1.i386.rpm
error: Failed dependencies:
libfoo = 2-1 is needed by foo-2-1.i386
だから私は立ち往生しています。私は、ユーザーが rpm -Uvh を実行して foo パッケージをアップグレードできるようにしたいと考えています (依存関係を無視することをユーザーに要求するなどは、初心者ユーザーに多くのことを要求しています)。
新しいリリースが利用可能になったときに rpm -Uvh を使用してパッケージのすべての部分をアップグレードできるように、これを回避する方法についてのアイデアはありますか?
前もって感謝します。