Ceci est une ancienne révision du document !
On utilise des outils (on parle de chaine de compilation croisée ou cross toolchain) pour générer des fichiers exécutables par une autre machine (la cible) basée sur une architecture différente. Application courante: J'utilise mon PC pour générer des programmes que je ferai s'éxecuter sur une machine ayant de plus faibles ressources: ma raspeberry Pi.
Cela peut sembler plus compliqué, pourquoi ne pas les générer les programmes directement sur la cible? Souvent ces cibles sont des plateformes légères, dédiée a de l'embarqué, leurs ressources sont limitées: espace disque, cadence du processeur, quantité de mémoire. La génération des binaires peut être bien plus longue.