rpm
パッケージをインストールすると、必要な依存関係ライブラリが欠落しているという警告が表示されます。実際、私はソースからライブラリをインストールしたので、私はrpm
知らなかったと思います。
rpm
では、既存の図書館をお知らせしますか?どのように?たぶん設定ファイルにいくつかのコードを追加しますかrpm
?
ただし、不足しているライブラリを再インストールするとrpm
問題が(すばやく)解決される可能性がありますが、時には利用可能なバージョンがない場合がありますrpm
。
ベストアンサー1
RPM依存関係データベースは、ソースからパッケージをインストールしたかどうかはわかりません。 RPMデータベースは、RPMパッケージ内のメタデータのみを認識しています。ソースからインストールされたパッケージにはこのメタデータは含まれていません。
ソース生成からパッケージを構築するいくつかの構成スクリプトpkg-config
、インストールされているパッケージのメタデータ。ただし、pkg-config
RPMメタデータ(またはDEB
メタデータまたはpacman
メタデータ)のメタデータ間に明示的な統合はありません。ディストリビューションをパッケージ化すると、パッケージャは特定の形式のメタデータをパッケージ(RPMパッケージなど)に挿入し、このメタデータを使用して依存関係を決定します。メタデータは他の形式では提供されません。
一方、同じシステムに異なるバージョンのライブラリがある可能性があります。デフォルトでは(例:GNUコーディング標準ほとんどのパッケージは、configure
その製品を/usr/local
。RPM
/usr
したがって、ルール(と呼ばれる)に従ってFHS)ソースからインストールされたパッケージ/ライブラリを維持し、同じものをインストールしてもライブラリ/usr/local
とRPM
競合しません(配布版のパッケージプログラムがFHSに準拠しているため)。
RPMが利用できない場合は、自分で構築できます。これを行うには、ソースからパッケージ/ライブラリをビルドし、それを仮想場所(ビルドルート)にインストールする必要があります。その後、RPMパッケージに必要なメタデータを提供し、それをRPMファイルにパッケージ化します。 TLDPは古いですが、非常に徹底していますRPM構築ガイド。