B.2.2.3. 解決できない依存関係
RPM パッケージは、他のパッケージに依存する場合があります。つまり、適切に実行するために他のパッケージをインストールする必要があります。未解決の依存関係があるパッケージをインストールしようとすると、以下のような出力が表示されます。
error: Failed dependencies: bar.so.3()(64bit) is needed by foo-1.0-1.el6.x86_64
CD-ROM や DVD などの Red Hat Enterprise Linuxnbsp;Hat Enterprise Linuxnbsp;Linux インストールメディアからパッケージをインストールする場合は、依存関係が利用できる可能性があります。Red Hat Enterprise Linuxnbsp;Hat Enterprise Linuxnbsp;Linux インストールメディア、またはアクティブな Red Hat Enterprise Linuxnbsp;Hat Enterprise Linuxnbsp;Linux ミラーリングのいずれかで推奨されるパッケージを見つけ、これをコマンドに追加します。
rpm -Uvh foo-1.0-1.el6.x86_64.rpm bar-3.1.1.el6.x86_64.rpm
両方のパッケージのインストールに成功すると、以下のような出力が表示されます。
Preparing... ########################################### [100%] 1:foo ########################################### [ 50%] 2:bar ########################################### [100%]
--whatprovides
オプションを試して、必要なファイルを含むパッケージを特定します。
rpm -q --whatprovides "bar.so.3"
bar.so.3
が含まれるパッケージが RPM データベースにある場合は、パッケージ名が表示されます。
bar-3.1.1.el6.i586.rpm
警告: パッケージのインストールの禁止
rpm で
Failed dependencies
エラーが表示されるパッケージをインストールするように 強制 することができますが( --nodeps
オプションを使用)、これは推奨され ず、通常はインストールされたパッケージの実行に失敗します。rpm --nodeps でパッケージのインストールまたは削除により、アプリケーションが誤作動したり、クラッシュしたりしてしまう可能性があり、重要なパッケージ管理の問題やシステム障害などの問題が生じる可能性があります。このような警告は、RPM、Yum、PackageKit( RPM、Yum、PackageKit)が認識しているので、これらの警告を確認して、依存関係のアカウンティングが重要であるため、これらの警告を提案してください。Yum パッケージマネージャーは、依存関係の解決と、オンラインリポジトリーから依存関係をフェッチすることができるため、依存関係の解決を考慮せずに rpm によるアクションの実行よりも安全で、より容易かつスマートになります。