Hirdetés

2024. május 5., vasárnap

Gyorskeresés

Hozzászólások

(#53) azbest


azbest
félisten

játszottam kicsit a raspi2-vel is ezen a téren...

kiderült, hogy ubuntu alatt egész könnyen lehet cross-toolchaint készíteni, mert van erre csomagjuk.

sudp apt-get install gcc-4.7-arm-linux-gnueabihf-* g++-4.7-arm-linux-gnueabihf
/usr/lib/icecc/icecc-create-env --gcc /usr/bin/arm-linux-gnueabihf-gcc-4.7 /usr/bin/arm-linux-gnueabihf-g++-4.7

és ezt elég csak átmásolni a pi-re. Persze a pi-n is 4.7-esre kell váltani a gcc g++ verziókat.
Lehet 4.8-at is érdemes kipróbálnom.

Viszont feltűnt egy komoly szűk keresztmetszet a pi-n. A preprocesszor cc1 a pi-n kell, hogy fusson, ez készíti el a bemenetet a fordító számára. És bizony a 4 magos pi-nél az aktuális kernel modulok fordításakor nem lehet fél óra alá menni, mert a cc1-ekre kell várni és nem tudja etetni a farmban lévő fordító gépeket.

Szóval ez tényleg arra jó, hogy a pi-n direktben menő fordítás sebességét megdobjuk, de ha igazán gyorsan kell fordítani, akkor ahhoz valami chroot-ba kell tenni a raspbian fájlrendszert és a pécén futtatni a cross-toolchain-nel és icecc-vel a fordítást. A pécé elég keményen oda tud lépni a preprocesszáláshoz, hogy kihajtsa a farm fordító gépeit. Aztán az eredményt lehet a pi-re visszatolni.

Úgy emlékszem olyan megoldást is láttam valahol, hogy a board-on lévő fájlrendszert csatolták fel távolról a pécére, úgy gyakorlatilag oda is kerül a helyére az eredmény fordítás közben a pécéről.
Nokia N9-hez volt olyan környezet, ami a teljes platform fájlrendszerét tartalmazta, az armos dolgokat qemu-val futtatta, de a natív cross-toolchain is futott benne. Icecc-t is be lehetett lőni alá...

[ Szerkesztve ]

Copyright © 2000-2024 PROHARDVER Informatikai Kft.