Назад | Перейти на главную страницу

Установка пакетов armhf в Ubuntu на Google Compute Engine

Я последовал за Debian Multiarch HOWTO иметь возможность установить libcholmod3:armhf. Я побежал dpkg --add-architecture armhf но теперь, если я убегу sudo apt-get update Я получаю сообщение об ошибке:

$ sudo apt-get update
[...]
Reading package lists... Done
E: Failed to fetch http://europe-west1.gce.archive.ubuntu.com/ubuntu/dists/zesty/main/binary-armhf/Packages  404  Not Found [IP: 192.158.31.252 80]
E: Failed to fetch http://europe-west1.gce.archive.ubuntu.com/ubuntu/dists/zesty-updates/main/binary-armhf/Packages  404  Not Found [IP: 192.158.31.252 80]
E: Failed to fetch http://europe-west1.gce.archive.ubuntu.com/ubuntu/dists/zesty-backports/main/binary-armhf/Packages  404  Not Found [IP: 192.158.31.252 80]
E: Failed to fetch http://security.ubuntu.com/ubuntu/dists/zesty-security/main/binary-armhf/Packages  404  Not Found [IP: 91.189.91.26 80]
E: Some index files failed to download. They have been ignored, or old ones used instead.

я вижу http://europe-west1.gce.archive.ubuntu.com/ubuntu/dists/zesty/main/ отсутствует binary-armhf каталог. Как правильно устанавливать пакеты armhf на платформе Google Compute Engine?

Есть две очевидные проблемы:

1. Сбои при загрузке при запуске apt-get update.

На самом деле это не проблема. Как говорится в сообщении, ошибки просто игнорируются. Ошибки устраняются добавлением "[arch = amd64]" в каждую строку в /etc/apt/sources.list, как описано https://wiki.debian.org/Multiarch/HOWTO#Setting_up_apt_sources

2. Тот факт, что в этих сообщениях об ошибках выборки, похоже, отсутствовал armhf в URL-адресах.

Я сделал grep europe-west1 /etc -R и /etc/apt/sources.list появился. Вверху файла есть несколько вариантов внесения изменений:

## if you wish to make changes you can:
## a.) add 'apt_preserve_sources_list: true' to /etc/cloud/cloud.cfg
##     or do the same in user-data
## b.) add sources in /etc/apt/sources.list.d
## c.) make changes to template file /etc/cloud/templates/sources.list.tmpl

Чтобы настроить Multiarch для armhf на облачном компьютере amd64 Google Platform, необходимо добавить следующий источник, используя один из вариантов выше:

deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports zesty main universe