Un compilador creuat és un compilador capaç de crear codi executable per a una plataforma diferent a la d'on s'executa el compilador. Per exemple, un compilador que s'executa en un ordinador però que genera codi que s'executa en un telèfon intel·ligent Android és un compilador creuat.[1]

Thumb
Exemple d sistema de plataforma creuada per a telèfons mòbils.

Un compilador creuat és útil per compilar codi per a diverses plataformes des d'un amfitrió de desenvolupament. La compilació directa a la plataforma de destinació pot ser inviable, per exemple en sistemes encastats amb recursos informàtics limitats.[2]

Els compiladors creuats són diferents dels compiladors d'origen a font. Un compilador creuat és per a la generació de programari multiplataforma de codi màquina, mentre que un compilador d'origen a font tradueix d'un llenguatge de codificació a un altre en codi de text. Tots dos són eines de programació.[3]

L'ús fonamental d'un compilador creuat és separar l'entorn de compilació de l'entorn de destinació. Això és útil en diverses situacions:

  • Ordinadors incrustats on un dispositiu té recursos molt limitats. Per exemple, un forn de microones tindrà un ordinador extremadament petit per llegir el seu teclat i el sensor de la porta, proporcionar sortida a una pantalla digital i un altaveu i controlar el microones per cuinar aliments. Aquest ordinador generalment no és prou potent per executar un compilador, un sistema de fitxers o un entorn de desenvolupament.
  • Compilació per a diverses màquines. Per exemple, una empresa pot voler donar suport a diverses versions diferents d'un sistema operatiu o donar suport a diversos sistemes operatius diferents. Mitjançant un compilador creuat, es pot configurar un únic entorn de compilació per compilar per a cadascun d'aquests objectius.
  • Compilant en una granja de servidors. De manera similar a la compilació per a diverses màquines, una compilació complicada que implica moltes operacions de compilació es pot executar a qualsevol màquina que sigui gratuïta, independentment del seu maquinari subjacent o de la versió del sistema operatiu que s'executi.
  • Bootstrapping a una nova plataforma. Quan es desenvolupa programari per a una plataforma nova, o l'emulador d'una plataforma futura, s'utilitza un compilador creuat per compilar les eines necessàries com ara el sistema operatiu i un compilador natiu.
  • Compilant codi natiu per a emuladors per a plataformes més antigues ara obsoletes com el Commodore 64 o l'Apple II per entusiastes que utilitzen compiladors creuats que s'executen en una plataforma actual (com ara els compiladors creuats MS-DOS 6502 d'Aztec C que s'executen amb Windows XP).[4]

Referències

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.