Почему can not apt-get устанавливает версию i386 любого пакета?

Почему can not apt-get устанавливает версию libpcap-dev i386?

$ sudo apt-get install libpcap-dev:i386 Reading package lists... Done Building dependency tree Reading state information... Done Package libpcap-dev:i386 is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source E: Package 'libpcap-dev:i386' has no installation candidate 

Однако пакет явно существует: https://launchpad.net/ubuntu/trusty/i386/libpcap-dev . Я на Ubuntu 14.04 x64.

Это обычно происходит из-за того, что вы не включили многоархиво и обновили списки пакетов. Это может быть достигнуто легко:

 sudo dpkg --add-architecture i386 sudo apt-get update 

Первый сообщает dpkg, что нам нравится поддерживать двоичные файлы i386 в нашей системе, APT запрашивает это и начинает загрузку не только списка пакетов amd64, но также i386. Я не уверен, почему это не является дефолтом в Ubuntu (в Debian это не так, но Debian поддерживает еще больше архитектур), но именно поэтому.

Пакет может существовать, но этот пакет является независимым от архитектуры пакетом (см. Здесь информацию об исходном пакете), поскольку это переходный пакет, который ничего не делает, кроме установки другого пакета. Такие пакеты не нужно «строить» для каждой архитектуры.

Пакет, который он устанавливает, – это libpcap0.8-dev (не спрашивайте меня, почему они решили суффикс пакета разработки с версией), который является многоэкранным.