tlbuild: Cross configuring
4.7.1 Cross configuring
-----------------------
In a standard cross compilation, binaries for the host system cannot
execute on the build system and it is necessary to specify the configure
options '--host=HOST' and '--build=BUILD' with two different values.
Building binaries requires suitable "cross" tools, e.g., compiler,
linker, and archiver, and perhaps a "cross" version of 'pkg-config' and
similar to locate host system libraries. Autoconf expects that these
cross tools are given by their usual variables or found under their
usual name prefixed with 'HOST-'. Here a list of such tools and
corresponding variables:
ar AR
freetype-config FT2_CONFIG
g++ CXX
gcc CC
icu-config ICU_CONFIG
objdump OBJDUMP
pkg-config PKG_CONFIG
ranlib RANLIB
strip STRIP
In order to, e.g., build 'mingw32' binaries on 'x86_64-linux' with a
cross compiler found as 'i386-pc-mingw32-gcc' one would specify
--host=i386-pc-mingw32 --build=x86_64-linux-gnu
or perhaps
--host=mingw32 --build=x86_64-linux CC=i386-pc-mingw32-gcc
but this latter, especially, might require adding 'CXX' and others.
Configure arguments such as 'CFLAGS=...' refer to the cross compiler.
If necessary, you can specify compilers and flags for the few auxiliary
C and C++ programs required for the build process as configure arguments
BUILDCC=...
BUILDCPPFLAGS=...
BUILDCFLAGS=...
BUILDCXX=...
BUILDCXXFLAGS=...
BUILDLDFLAGS=...