web-dev-qa-db-ja.com

仮想パッケージが依存関係として指定されている場合、apt / dpkgはどの実際のパッケージをインストールするかをどのように選択しますか?

例えばパッケージが指定する場合

Depends: www-browser

Apt/dpkgはどの実際のパッケージをインストールするかをどのように決定しますか?

5
the_velour_fog

Ask Ubuntuの この回答 によると、aptは最初にオプションとしてリストされている非仮想パッケージをインストールしようとします。

さて、情報源によると、aptは最初に 以前の依存関係を満たす 試してみる 仮想パッケージ (つまり、依存関係がfirefox | www-browser、パッケージのいずれかがインストールされているかどうかを確認し、インストールされていない場合はFirefoxのインストールを試みます)。

そうでない場合は、仮想パッケージを提供するパッケージのリストを繰り返し処理し、可能な最初のパッケージをインストールします。

非仮想パッケージが利用できない場合、他の依存関係が壊れていなければ、 仮想パッケージを提供するすべてのパッケージ を反復するように見えます。この動作の他のコメント証拠は thisGrpIterator :: FindPreferredPkg function につながります。

5
Nonny Moose