Nastavení toolchainu pro ARM

Procesory pohánějící většinu dnes používaných pracovních stanic nebo notebooků jsou postaveny na architektuře x86 nebo x64. Pokud chceme spustit nějaký kompilovaný program na jiné architektuře, je nutné k tomu použít příslušný toolchain.

Nejdříve uvedeme pár důležitých pojmů.

  • Host – je hostitelský počítač (často x86/x64 architektury)
  • Target – je cílový počítač (v tomto případě ARM)
  • Toolchain – je soubor binárních programů (utilit) sloužících pro kompilaci zkompilovaných pro Hostitelský systém
  • Cross-kompilace – je proces kdy se využije toolchain schopný kompilace pro Target architekturu

V novějších linuxových distribucích je řada toolchainů schopných cross-kompilace obsažena již ve standartních repozitářích. Jejich instalace je tedy snadná.

Na 64-bitových systémech je navíc potřeba nainstalovat ještě 32-bitové knihovny. Pokud by se překládalo pro 64-bitový ARM procesor, pravděpodobně by nebyly potřebné.

S takto nainstalovaným a automaticky nastaveným toolchainem je už možné začít kompilovat binární programy pro ARM platformu.

Výše napsaný Hello world je možné zkompilovat jednak pomocí standartního gcc, tak pomocí cross-kompilace. Výsledný binární soubor pak půjde spustit buď na jedné nebo druhé platformě.

Architekturu, pro kterou je binární soubor zkompilován lze zjistit z výpisu utility file.

Z výpisu lze vyčíst, že se jedná o spustitelný soubor zkompilovaný pro ARM architekturu, dále je dynamicky slinkovaný a nestrippovaný.

Mohlo by se vám líbit...

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *