32 ビット パッケージをインストールすると 64 ビット パッケージが削除されるのはなぜですか?

32 ビット パッケージをインストールすると 64 ビット パッケージが削除されるのはなぜですか?

32 ビット パッケージをインストールすると、64 ビット パッケージを削除する必要がある理由がわかりません。

たとえば、次のようにして libcurl の 32 ビット開発パッケージをインストールしようとすると、

sudo apt-get install libcurl4-gnutls-dev:i386

apt-getは17種類の64ビットパッケージを削除することを示しています。gccを含む

The following packages will be REMOVED:
  comerr-dev cpp g++ g++-multilib gcc gcc-multilib gfortran krb5-multidev
  libcurl4-openssl-dev libgcrypt11-dev libgnutls-dev libgpg-error-dev
  libidn11-dev libkrb5-dev libp11-kit-dev librtmp-dev libtasn1-6-dev

同じ開発ボックスで 64 ビット パッケージと 32 ビット パッケージの両方を利用する必要があります。これは簡単なことだと思います。何を誤解しているのでしょうか? 重要な 64 ビット パッケージを削除せずに 32 ビット パッケージをインストールするには、何をする必要がありますか?

編集: マルチアーキテクチャのサポートはすでに有効になっているようです:

$ dpkg --print-foreign-architectures
i386

答え1

対話モードで使用する場合はaptitude、競合エディターで問題を検査できるはずです (e入力するには を押します)。おそらく、依存ライブラリの 1 つがまだマルチアーキテクチャに対応していない可能性があります。

関連情報