Podpora pro MIPS do GCC

ynezz

Re:Podpora pro MIPS do GCC
« Odpověď #15 kdy: 06. 11. 2013, 23:56:40 »
Kdybych vedel o jake zarizeni se jedna, mohla by byt odpoved presnejsi, jinak bych asi doporucil http://wiki.openwrt.org/doc/devel/crosscompile (je to lepsi si to sestavit sam a pak pridavat pripadne knihovny/zavislosti) a pripadne hotove toolchains (jsou tam i cele SDK) jako napr. http://downloads.openwrt.org/attitude_adjustment/12.09/ramips/rt305x/OpenWrt-Toolchain-ramips-for-mipsel_r2-gcc-4.6-linaro_uClibc-0.9.33.2.tar.bz2


lukas016

Re:Podpora pro MIPS do GCC
« Odpověď #16 kdy: 07. 11. 2013, 11:50:52 »
Pisal som vyssie NanoStation M5 od www.ubnt.com, alebo ine ich zariadenia. Skusal som ich sdk skompilovat bez uprav ale vyhodilo mi to chybu, ze sa nenasla zlozka a nemal som uz chut skusat SDK pre ine zariadenie alebo zistovat odkial stiahnem chybajuci priecinok. Pokial viem malo by to bezat na upravenom openwrt. Co sa tyka ich sdk tak to vytvara pomocou make ale cely firmware co sa mi zda byt kus zbytocne ked chcem momentalne vytvorit len jednoduchu aplikaciu aby som si vyskusal kompilaciu.

ynezz

Re:Podpora pro MIPS do GCC
« Odpověď #17 kdy: 07. 11. 2013, 22:43:59 »
Zbytecne je umrit. Tou praci navic ziskas vsechny zavislosti pro tu binarku a pokud neco na cilovem zarizeni chybi(nejake knihovny), tak to tam budes mit moznost dohrat. Ale co ti budu radit, sam urcite vis co je nejlepsi :) Chci ti jenom usetrit cas, stejne te to nemine. Ale i cesta je cil...

Jinak M5 je myslim vice verzi, ale pokud mas tu novejsi, tak to je asi ar71xx (to si jeste zkontroluj pres /proc/cpunifo) http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/OpenWrt-Toolchain-ar71xx-for-mips_r2-gcc-4.6-linaro_uClibc-0.9.33.2.tar.bz2

lukas016

Re:Podpora pro MIPS do GCC
« Odpověď #18 kdy: 08. 11. 2013, 00:02:22 »
Tak ja mometalne potrebujem len zakladne veci, ktore by sa dali spravit aj cez shell ale radsej by som to riesil v ramci jednej aplikacie a znizil HW naroky. A robit cely firmware velmi nechcem z dovodu, ze ak by to fungovalo tak ako chcem tak by bolo potrebne nahravat upraveny firmware do kazdeho zariadenia a tych je niekolko tisic.

+ rad sa naucim nieco nove.

Lol Phirae

Re:Podpora pro MIPS do GCC
« Odpověď #19 kdy: 08. 11. 2013, 10:19:38 »
A robit cely firmware velmi nechcem z dovodu, ze ak by to fungovalo tak ako chcem tak by bolo potrebne nahravat upraveny firmware do kazdeho zariadenia a tych je niekolko tisic.

To je samozrejme uplny nesmysl. Zato by to fungovalo, neb by to bylo zkompilovano proti knihovnam, ktere firmware skutecne obsahuje. Ne proti tem, jejichz zdrojaky si nainstalujes na svuj pocitac a ktere zrejme budou asi o nekolik let novejsi.


ynezz

Re:Podpora pro MIPS do GCC
« Odpověď #20 kdy: 08. 11. 2013, 14:10:56 »
A robit cely firmware velmi nechcem z dovodu, ze ak by to fungovalo tak ako chcem tak by bolo potrebne nahravat upraveny firmware do kazdeho zariadenia a tych je niekolko tisic.

Ok, delej jak myslis. Ja jsem nikde nic o vlastnim firmware nepsal. Psal jsem, ze si mas zkompilovat zakladni OpenWrt pro tu danou platformu(ar71xx) a SVN revizi OpenWrt. Tim ziskas kompletni toolchain a staging adresar (include, libs pro target), se kterym budes teoreticky schopny zkompilovat neco co ti na tom kramu od Ubnt pobezi. Nikde neni napsane, ze to musis prehravat cele. Tim ze pouzijes OpenWrt build system, usetris spousty casu a nervu. Lehce pak pridas dalsi zavislosti (chybi libpcap? libsqlite3? neni problem, pridas do konfigurace a znovu zkompilujes).

Ja mam treba nekolik takovych souboru, ktere pouzivam pro ruzne zarizeni, ktere si pomoci prikazu 'source' nahraju do aktualniho prostredi:

Kód: [Vybrat]
export OWRT_ROOT=/opt/devel/openwrt/cm2
export STAGING_DIR=$OWRT_ROOT/staging_dir/target-mips_r2_uClibc-0.9.33
export TOOLCHAIN=$OWRT_ROOT/staging_dir/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33
export PATH=$TOOLCHAIN/bin:$PATH
export ARCH=mips
export CROSS_COMPILE=mips-openwrt-linux-uclibc-

export CC=${CROSS_COMPILE}gcc
export CXX=${CROSS_COMPILE}g++
export LD=${CROSS_COMPILE}gcc
export STRIP=${CROSS_COMPILE}strip
export AR=${CROSS_COMPILE}ar
export RANLIB=${CROSS_COMPILE}ranlib

a pak mam treba v Makefile (pokud na zarizeni chybi libpcap):

Kód: [Vybrat]
cp $(STAGING_DIR)/usr/lib/libpcap.so.1.1 root@mips-cm2:/usr/lib

A stejne pokud tady mluvis o 1k+ zarizenich, tak te vetsinou vlastni firmware nemine, protoze to budes chtit nejak spravovat, monitorovat, upgradovat...

mhi_

Re:Podpora pro MIPS do GCC
« Odpověď #21 kdy: 08. 11. 2013, 18:45:54 »
Na experimenty doporucuji buildroot. Je to system, ktery stahne vse potrebne a podle zadanych pozadavku sestavi komplet root filesystem (umi snad i kernel-nevim).

Sestavit binutils+gcc pro mips je trivialni ukol; stejne tak buildnout kernel Linuxu. O neco mene trivialni je sestavit nejake libc a userland binarky typu busybox (vetsina z nich ma totiz mnoho potizi, kdy nefunguji s nejakym gcc nebo na nejakem procesoru, apod.). Na posledni ukol je dobry prave ten buildroot.

lukas016

Re:Podpora pro MIPS do GCC
« Odpověď #22 kdy: 08. 11. 2013, 18:52:39 »
Buildroot som skusal ale ked sa to instalovalo viac ako 30 minut tak som to radsej zrusil. A ake zariadenie je vhodne pouzivat lebo mam skusenosti este s mikrotikom ale to ich API a zle chovanie ssh je naozaj hrozne.

mhi_

Re:Podpora pro MIPS do GCC
« Odpověď #23 kdy: 08. 11. 2013, 21:35:09 »
"buildroot" se kompiloval na mem Atomu (eee pc 1000h) celou noc, takze tomu dejte sanci. Absolvoval jsem to 2x, jednou pro PowerPC, jednou pro MIPS, kvuli tomuto: http://forum.root.cz/index.php?topic=7178.0

Lol Phirae

Re:Podpora pro MIPS do GCC
« Odpověď #24 kdy: 09. 11. 2013, 16:06:50 »
ked sa to instalovalo viac ako 30 minut tak som to radsej zrusil.

;D ;D ;D

Cece... s timhle pristupem se fakt daleko nedostanes. Te neco honi, nebo proc to nenechas bezet at to bude hotovy?