これは私の以前の質問に対するフォローアップの質問ですapt-rdepends はマルチアーキテクチャ情報を表示しません。
apt-cache
その問題は解決しましたが、今度は依存関係のすべての選択肢を再帰的に処理する問題に遭遇しました。
$ apt-cache depends --recurse --no-recommends --no-suggests --no-breaks --no-suggests --no-replaces --no-conflicts --no-pre-depends nano
nano
Depends: libc6
Depends: libncursesw5
Depends: libtinfo5
|Depends: dpkg
dpkg:i386
Depends: install-info
install-info:i386
libc6
Depends: libgcc1
libncursesw5
Depends: libtinfo5
Depends: libc6
Recommends: libgpm2
libtinfo5
Depends: libc6
dpkg
dpkg:i386
install-info
Depends: libc6
install-info:i386
Depends: libc6:i386
libgcc1
Depends: gcc-4.9-base
Depends: libc6
libgpm2
Depends: libc6
libc6:i386
Depends: libgcc1:i386
gcc-4.9-base
libgcc1:i386
Depends: gcc-4.9-base:i386
Depends: libc6:i386
gcc-4.9-base:i386
これにより、現在、私のパッケージ リストが約 300% 増加しています。
優先される代替パッケージのみ (この例では i386 パッケージではない) を使用するように強制する方法について何か提案はありますか?
答え1
同じ問題がありました。
-o APT::Cache::ShowOnlyFirstOr=true
これは問題の一部を解決しますが、完全には解決しません。たとえば、マルチアーキテクチャがあり、両方のアーキテクチャで同じパッケージが提供されている場合 (つまり、OR ではなく、実際に使用できる 2 つのパッケージ)、両方で再帰が発生します。
このオプションはどこにも文書化されていないようですので、警告しておくべきだと思います。また、優先オプションが常に最初であるかどうかはわかりません。
(「ShowOnlyFirstOr」がどのように使用されているかをご覧ください) https://salsa.debian.org/apt-team/apt/blob/master/apt-private/private-depends.cc)