Ubuntu Jammy (WSL): armhf arch を追加してもパッケージやリポジトリが見つからない

Ubuntu Jammy (WSL): armhf arch を追加してもパッケージやリポジトリが見つからない

WSL を使用して、Windows PC 上で armhf 用の C++ プログラムをクロスコンパイルしようとしています。

数年前に Debian イメージで実行できた方法を保存しておいたのですが、今度は新しい PC でもう一度実行する必要があります。PowerShell コマンドによってwsl.exe --installUbuntu 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.

binary-armhfそれらの URL を確認しましたが、いずれにもディレクトリが存在しません。

libgtk-3-dev:armhf当然、その場合、パッケージや arm gcc コンパイラを apt -install することはできません。

私は Linux の専門家ではないので、リストにリポジトリを追加する必要があるかもしれないことは理解していますが、その場所を見つけることができません。

WSL 用の Windows ストアから入手できる Ubuntu Jammy イメージを使用して armhf をビルドするにはどうすればよいか教えてください。

答え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

関連情報