저는 데비안 환경에서 일하고 있는데 잘 작동합니다. 프로젝트를 빌드하려면 sudo apt install
종속성을 빌드한 다음 빌드합니다.
하지만 mingw-w64를 사용하여 Debian 환경에서 크로스 컴파일하고 싶습니다. 빌드 종속성의 버전 이 없으므로 -w64
빌드해야 합니다.
특정 툴체인을 apt source <package>
사용하는 방법이 있나요 ?dpkg-buildpackage
나는 추측한다--target-arch
내가 필요한 것에 가깝지만 w64가 지원되는 아키텍처가 아닌 것 같습니다.
이해합니다http://clang.debian.netclang을 사용하여 데비안 아카이브를 구축하는 방법을 설명합니다.
cd /usr/bin
rm /usr/bin/{g++,gcc,cpp}
ln -s /usr/bin/clang++ /usr/bin/g++
ln -s /usr/bin/clang /usr/bin/{gcc,cpp}
이것이 이것을 달성하는 합리적인 방법입니까? ( mingw
하지만 clang
)?
답변1
안타깝게도dpkg
MinGW-w64 대상에는 지원되는 아키텍처가 없습니다.dpkg-buildpackage
이므로 다른 지원되는 아키텍처와 같은 간단한 크로스 빌드 설정에서는 사용할 수 없습니다 dpkg
. MinGW-w64 크로스 컴파일러를 제공해도 gcc
작업을 단순화 할 수 없습니다 g++
. 크로스 컴파일 설정에는 툴체인 접두사에 대한 지식이 필요합니다.
실제로는 각 종속성을 수동으로 구축해야 하며, 가능하면 해당 Debian 패키지부터 시작하여 작업이 더 쉬워집니다. 크로스 컴파일 빌드의 경우 평소와 같이 빌드 구성을 설정해야 합니다.예를 들어
./configure --host x86_64-w64-mingw32
MinGW-w64로 구축된 데비안 패키지 중 예시로 사용할 수 있는 패키지가 있습니다.libassuan
그리고libz
다른 것들 사이.
(저는 데비안의 MinGW-w64 툴체인 관리자입니다.)