라즈베리파이용 크로스 컴파일 환경을 만들고 싶습니다. 이제 qemu-arm 기반 크로스 컴파일 환경을 갖춘 VM이 있습니다.이것기사) 매우 느립니다.
내 생각에는 네이티브 i386 컴파일러가 다양한 아키텍처에 대한 실행 파일을 생성할 수 있다고 생각합니다. 툴체인과 적절하게 구성된 make.conf만 필요하지만 제가 틀렸을 수도 있습니다.
교차 구축을 위해 시스템을 구성하는 방법을 아는 사람이 있을까요?
- 호스트 시스템: vm i386의 freebsd 11
- 대상: freebsd 11 armv6hf
답변 주셔서 감사합니다!
답변1
FreeBSD 11에는 이미 사용 가능한 크로스 컴파일러가 있습니다.
i386 또는 amd64 호스트에서 gnatcross-aarch64 포트를 사용해 볼 수 있습니다.
포트에서 모든 gnatcross 비트를 컴파일할 수 있습니다. pkg를 사용하여 설치할 수 있는 프로젝트는 두 가지가 있습니다. "pkg search gnatcross"를 실행하면 목록이 표시됩니다.
FreeBSD 11은 Raspberry PI 3에서 작동하지 않으므로 사용에 문제가 있을 수 있습니다. FreeBSD 12 파일을 사용하려면 gnatcross-* 패키지를 수정해야 할 수도 있습니다. 나는 약간의 조정을 거쳐 필요한 v12 파일(base.txz)로 distfiles 캐시를 늘렸습니다. 사용하고 있던 포트 이름을 변경했습니다. gnatcross-* 대신 gx-*로 이름을 줄였습니다.
gnatcross는 Ada 컴파일러를 포함하고 있기 때문에 유명합니다.
FreeBSD 환경에서 크로스 컴파일러를 생성하는 데는 여러 가지 기술이 있습니다. 당신은 시도 할 수 있습니다이것.
답변2
저는 VPS를 가지고 있고 그것을 poudriere와 함께 사용합니다(참조여기). 나는 이것이 가장 간단한 해결책이라고 생각합니다.