Ubuntu Jammy (в WSL): добавление архитектуры armhf, не могу найти пакеты или репозитории

Ubuntu Jammy (в WSL): добавление архитектуры armhf, не могу найти пакеты или репозитории

Я пытаюсь использовать WSL для кросс-компиляции программы на C++ для armhf на ПК с Windows.

Я сохранил, как я смог сделать это на образе Debian несколько лет назад, и теперь мне нужно сделать это снова на новом ПК. Поскольку команда powershell wsl.exe --installавтоматически установила Ubuntu Jammy, я могу сохранить это.

Следующим шагом я хочу добавить архитектуру armhf ( sudo dpkg --add-architecture armhf), но получаю много ошибок, подобных этим:

E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/jammy/main/binary-armhf/Packages  404  Not Found [IP: 185.125.190.39 80]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/jammy-updates/main/binary-armhf/Packages  404  Not Found [IP: 185.125.190.39 80] 
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/jammy-backports/main/binary-armhf/Packages  404  Not Found [IP: 185.125.190.39 80] 
E: Failed to fetch http://security.ubuntu.com/ubuntu/dists/jammy-security/main/binary-armhf/Packages  404  Not Found [IP: 91.189.91.82 80] 
E: Some index files failed to download. They have been ignored, or old ones used instead.

Я просмотрел эти URL-адреса, и binary-armhfни в одном из них этот каталог не существует.

Очевидно, тогда я не смогу выполнить apt -install libgtk-3-dev:armhfпакетов или компилятор arm gcc.

Я не настоящий эксперт в Linux; я понимаю, что мне, возможно, придется добавить репозитории в список, но я не могу найти, где они находятся.

Может ли кто-нибудь подсказать, что мне следует сделать для сборки armhf с использованием образа Ubuntu Jammy, доступного в Магазине Windows для WSL?

решение1

Ваш окончательный sources.list должен выглядеть примерно так:

deb [ arch=amd64,i386 ] http://archive.ubuntu.com/ jammy main restricted universe multiverse
deb [ arch=amd64,i386 ] http://archive.ubuntu.com/ jammy-updates main restricted universe multiverse
deb [ arch=amd64,i386 ] http://archive.ubuntu.com/ jammy-security main restricted universe multiverse
deb [ arch=amd64,i386 ] http://archive.ubuntu.com/ jammy-backports main restricted universe multiverse

deb [ arch=armhf ] http://ports.ubuntu.com/ jammy main restricted universe multiverse
deb [ arch=armhf ] http://ports.ubuntu.com/ jammy-updates main restricted universe multiverse
deb [ arch=armhf ] http://ports.ubuntu.com/ jammy-security main restricted universe multiverse
deb [ arch=armhf ] http://ports.ubuntu.com/ jammy-backports main restricted universe multiverse

(Плюс deb-srcстроки, которые я опустил для краткости)

Для ясности я бы предложил поместить репозитории armhfв отдельный .listфайл /etc/apt/sources.list.d.

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