依存パスを見つけるにはどうすればいいですか?

依存パスを見つけるにはどうすればいいですか?

たとえば、次のようなパッケージとその依存関係があります。

a -> b (a require b)
b -> c & d
x -> a
y -> x
z -> x
z -> x & y

ここで、 と を与えるcz、2 つの依存関係パスが存在します。

z -> x -> a -> b -> c
z -> y -> x -> a -> b -> c

問題は、特定の 2 つの Debian パッケージ間の依存関係パスをどのように見つけるかということです。

PS 背後にある考え方は、チェーンに欠けている中間のパッケージを含め、特定のパッケージ セットの依存関係グラフを描画することです。

答え1

を使用することで、全体的な問題はすでに解決されている可能性がありますapt-cache dotty

自分で実装したい場合は、グラフ アルゴリズムを使用してパスを見つけます。または、apt-cache のソース コードを確認してください。 ;-)

関連情報