So weisen Sie CMake an, den Build-Architektur-Compiler zu verwenden
Wenn Sie CMake zum Cross-Compilieren verwenden, geben Sie im Allgemeinen eine Toolchain-Datei über das @ aCMAKE_TOOLCHAIN_FILE
Möglichkeit. Im GNU-Terminologie Mit dieser Datei kann das Toolset für die Host-Architektur angegeben werden. Im Allgemeinen kann man jedoch nicht erwarten, dass mit dieser Toolchain alles ausgeführt werden kann, was erstellt wurde. So oft genug müssen einige Build-Tools für die Build-Architektur kompiliert werden.
Betrachten Sie das folgende Setup. Ich habe zwei Quelldateiengenfoo.c
undbar.c
. Während des Builds,genfoo.c
muss kompiliert und ausgeführt werden. Die Ausgabe muss in @ geschrieben werdfoo.h
. Dann kann ich @ kompilierbar.c
, welche#include "foo.h"
. Da CMake standardmäßig die Toolchain der Host-Architektur verwendet, finden Sie die Anweisungen fürbar.c
sind einfach. Aber wie soll die Build-Architektur-Toolchain zum Kompilieren von @ verwendet werdegenfoo.c
? Einfach @ sagadd_executable(genfoo genfoo.c)
führt zur Verwendung des falschen Compilers.