WSL을 사용하여 Windows PC에서 armhf용 C++ 프로그램을 크로스 컴파일하려고 합니다.
몇 년 전에 데비안 이미지에 이 작업을 수행한 방법을 저장했는데 이제 새 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.
나는 이 URL을 살펴본 결과 binary-armhf
그 어떤 URL에도 해당 디렉토리가 존재하지 않는다는 것을 발견했습니다.
libgtk-3-dev:armhf
분명히 패키지나 arm gcc 컴파일러를 적절하게 설치할 수 없습니다 .
저는 실제로 Linux 전문가는 아닙니다. 목록에 저장소를 추가해야 할 수도 있지만 해당 위치를 찾을 수 없습니다.
Windows 스토어에서 제공되는 Ubuntu Jammy 이미지를 사용하여 armhf용 WSL을 빌드하는 방법을 알려주실 수 있나요?
답변1
최종 소스 목록은 다음과 같아야 합니다.
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