Почему установка 32-битного пакета удаляет 64-битные пакеты?

Почему установка 32-битного пакета удаляет 64-битные пакеты?

Мне не ясно, почему установка 32-битного пакета потребует удаления 64-битного пакета.

Например, если я попытаюсь установить 32-битный пакет разработки libcurl с помощью:

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-битные пакеты на одном и том же компьютере разработки. Я считаю, что это должно быть тривиально. Что я не понимаю? Что мне нужно сделать, чтобы установить 32-битные пакеты, не удаляя критические 64-битные пакеты?

Редактировать: Поддержка мультиархитектуры, похоже, уже включена:

$ dpkg --print-foreign-architectures
i386

решение1

Если вы используете aptitudeв интерактивном режиме, вы должны иметь возможность проверить проблему в редакторе конфликтов (нажмите, eчтобы войти в него). Вероятно, одна из зависимых библиотек еще не поддерживает мультиархитектуру.

Связанный контент