Kompilatory krzyżowe to programy zdolne do generowania kodu wykonywalnego, które można uruchomić na platformie, która obecnie nie jest platformą rezydentną dla kompilatora. Są one powszechnie stosowane, gdy programista musi korzystać z wielu platform w celu obsługi funkcji obliczeniowych, takich jak systemy wbudowane, w których każdy komputer wbudowany w system ma mniej zasobów. Korzystanie z kompilatora krzyżowego pozwala przezwyciężyć ten brak zasobów, tworząc wzajemnie powiązane wykonywanie różnych komponentów w systemie.
Jednym z przykładów zastosowania kompilatora krzyżowego jest użycie mikrokontrolerów w systemie. Zasadniczo mikrokontroler nie zawiera dużej ilości pamięci, więc gdy ten program jest używany do obsługi tworzenia i wydawania poleceń, mniej zasobów mikrokontrolera jest związanych z poleceniami administracyjnymi. Oznacza to, że można je skierować na wykonanie zadania zamówionego przez kompilator.
Program może pomóc w utworzeniu działającej sieci między różnymi typami maszyn, a nawet różnymi wersjami systemu operacyjnego. W tej aplikacji firma może używać zarówno starszych, jak i nowszych wersji systemu operacyjnego, aby uzyskać dostęp do wspólnej sieci, nawet jeśli stacje robocze w biurze wyposażone są w szeroką gamę komputerów stacjonarnych o różnym wieku i pojemności. Korzystanie z tego typu programu pozwala zgromadzić wszystkie te różnorodne elementy w spójne środowisko kompilacji, które pozwoli każdej ze stacji uzyskać dostęp do niezbędnych plików i danych znajdujących się na wspólnym serwerze.
Wiele kompilatorów można prześledzić od początków rozwoju systemu Windows® i stopniowego spadku używania DOS przez wielu użytkowników końcowych. Dziś pozostają powszechnym środkiem maksymalizacji wydajności kilku komponentów. Maszyny wirtualne, takie jak JVM Javy, są jednak w stanie obsłużyć w końcu część funkcji, które kiedyś były możliwe tylko przy użyciu tego oprogramowania.


