%3A%20armhf%20arch%20%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%97%E3%81%A6%E3%82%82%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%82%84%E3%83%AA%E3%83%9D%E3%82%B8%E3%83%88%E3%83%AA%E3%81%8C%E8%A6%8B%E3%81%A4%E3%81%8B%E3%82%89%E3%81%AA%E3%81%84.png)
WSL を使用して、Windows PC 上で armhf 用の C++ プログラムをクロスコンパイルしようとしています。
数年前に Debian イメージで実行できた方法を保存しておいたのですが、今度は新しい PC でもう一度実行する必要があります。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.
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
。