Jak kompilovat pro jinou architekturu?

KLAUN

Jak kompilovat pro jinou architekturu?
« kdy: 24. 03. 2014, 06:38:42 »
Ahoj,

mam raspberry pi a na ni debian armv6l.
Musim si zkompilovat PhantomJS, protoze balicek co nabizi debian je prilis stary.

No uz kompiluji 24hodin a buh vi jak dlouho to jeste potrva a jestli se to zkompiluje spravne.

Existuje nejaka snadna cesta, jak bych to mohl zkompilovat na svem core2duo? Bez toho abych nad tim tyden laboroval? Chtel bych usetrit cas.


KLAUN

Re:Jak kompilovat pro jinou architekturu?
« Odpověď #1 kdy: 24. 03. 2014, 06:50:00 »
Abyste mi rozumeli, nechci se hrabat v cizich scriptech.

Spis jsem doufal, ze bych si na desktopu mohl naemulovat  ten armv6 procesor a nainstalovat si tam stejny debian. A zkompilovat to tam s tim, ze i kdyz se bude armv6 emulovat, stale to bude podstatne rychlejsi nez na raspberry_pi?

Jardaa

Re:Jak kompilovat pro jinou architekturu?
« Odpověď #2 kdy: 24. 03. 2014, 08:11:57 »
Jako rychlá cesta mě napadá třeba VirtualBox ale nevím jak je na tom s podporou ARM architektury, případně jiná virtualizační platforma.

Anonym

Re:Jak kompilovat pro jinou architekturu?
« Odpověď #3 kdy: 24. 03. 2014, 08:59:40 »
Našiel som pekný návod ako emulovať raspberry-pi v Qemu. Osobnú skúsenosť s rýchlosťou nemám ale dá sa predpokladať, ze vo výsledku to bude rádovo rýchlejšie ako fyzická malina.
http://xecdesign.com/qemu-emulating-raspberry-pi-the-easy-way/

Martin

Re:Jak kompilovat pro jinou architekturu?
« Odpověď #4 kdy: 24. 03. 2014, 09:32:55 »
Ahoj,
to co hladas sa nazyva cross-compilation. Vacsina embedded systemov sa cross compiluje na vyvojovych strojoch, ktore nielenze su omnoho rychlejsie ako cielovy system, ale obsahuju vsetky potrebne nastroje, ktore sice su potrebne pri kompilacii (napr. samotny compiler), ale nie su potrebne na beh aplikacie.

Tema cross-compilation je dost obsiahla, snad ti pomoze toto:
http://elinux.org/RPi_Kernel_Compilation


Trubicoid2

Re:Jak kompilovat pro jinou architekturu?
« Odpověď #5 kdy: 24. 03. 2014, 10:18:55 »
Cross-compile je o dost rychlejsi, nez kompilace v emulgatoru. Avsak nekdy byva problem s knihovnama, ktery je treba ke kompilaci. Ty si musis taky cross-compilnout.

Ten virtualbox asi neumi arm, nebo? To si jako malo lidi uvedomi, ze virtualizovat x86 na x86 jede temer stejne rychle. Kdyz je ale potreba prevadet instrukce z arm na x86 tak hoodne zpomalis.

fahacz

Re:Jak kompilovat pro jinou architekturu?
« Odpověď #6 kdy: 24. 03. 2014, 20:20:05 »
Sel jsem jiz pred delsi dobou touto cestou, byly tam nejake komplikace, ale nakonec jsem to prekonal.
http://www.satsignal.eu/raspberry-pi/kernel-cross-compile.html
https://github.com/raspberrypi/tools

Hodne stesti.