Если вы запустите
ls -l /usr/lib/jvm
, вы увидите, что java-1.8.0-openjdk-i386
является символической ссылкой на java-8-openjdk-i386.
, так что избавляться не от чего.
В таких случаях dpkg -S
только находит символические ссылки, но не разыменовывает их:
dpkg -S /usr/lib/jvm/java-*-openjdk-i386
должно указывать, что оба «каталога» происходят из openjdk-8-jdk-headless
.
Да, это правда, что вы можете не имеют одновременной установки build-essential: i386
и build-essential: amd64
. Для этого потребуется наличие двух экземпляров некоторых исполняемых файлов (например, gcc
), и это не поддерживается Спецификацией Multiarch :
Нерешенные проблемы
Совместно- устанавливаемые пакеты для исполняемых файлов
Совместная установка исполняемых файлов потенциально сделает возможным повторное использование одного образа диска в системах с несколькими архитектурами без каких-либо изменений. Это может быть реализовано поверх мультиархитектуры с использованием подходящих для архитектуры путей для исполняемых файлов, но для реализации обработки PATH потребуется дополнительный механизм (например, поддержка ядра или символическая ссылка во время загрузки).
Дело в том, что на самом деле вам не нужен build-essential: i386 в системе amd64, в зависимости от того, что вы хотите скомпилировать, вам может понадобиться libpam-dev: i386 или другие 32-битные библиотеки -dev, но вы должны использовать 64-битные инструменты, даже для генерации 32-битного кода, главным образом потому, что они теоретически должны работать быстрее ... у них есть доступ к большему объему памяти ...
Отредактируйте /etc/apt/sources.list
и добавьте следующую строку:
deb http://ftp.de.debian.org/debian sid main
Обновите и переустановите build_essential
Также вы можете запустить apt-get build-dep $ package
, и он установит зависимости сборки для этого пакета