Un " cross compiler " traduit un code source sur un ordinateur source (HOST) en code objet pour un environnement d'exécution cible (TARGET) d'architecture matérielle différente de celui où la compilation a été effectuée. Exemple : la génération d'un exécutable pour processeurs ARM (la cible) sur une architecture x86 (la source).
Technique relativement récente, la cross-compilation varie selon la puissance du processeur. C'est ainsi qu'un processeur ARM Intel SA110 tournant à 233 Mhz (avec 256 Mo de RAM) mettra 275 minutes à compiler GTK2 (cible = source = ARM Intel Sa110), ce qui n'aurait pris que 12 minutes avec un processeur Intel Xeon cadencé à 2,80GHz (avec 2 gigas de RAM) (cible = source = Intel Xeon). Maintenant, en mettant en place un environnement de cross-compilation, il est possible de réaliser la compilation des sources GTK2 avec comme source l'Intel Xeon et comme
cible le processeur ARM en (seulement) 20 minutes. Le gain est significatif !