Ciao,
io ho una ubiquity routerstation, arrivata con sopra openwrt kamikaze.
Secondo me ti manca un passaggio: normalmente con gli apparati embedded
hai risorse molto limitate sia di ram, di rom, CPU, più le varie
caratteristiche peculiari che ha una eeprom e che non ha il tuo hard
disk, insomma è propro un altro mondo. Non ti aspettare di prenderti la
routeroard entrarci in ssh, scrivere il codice e compilarlo con gcc come
faresti con una normale distro. "Non je la fa" come si dice a Roma.
Non aspettarti di avere delle partizioni etx2/ext3/raiserfs. Non ti
aspettare nemmeno di compilare un programma, copiarlo sulla routerboard
ed eseguirlo. In generale non è vero. Nel caso della ubiquity ad esempio
l'architettura e' mips e non i386, quindi non girerebbe.
Per questo motivo hanno creato OpenWRT che in pratica è un archibugio
che ti compila il kernel tradizionale su una macchina normale, ma per
l'architettura di destinazione.
Idem per i "pacchetti" che sono i normali programmi. Grazie ad un uso un
po' improprio (a detta degli stessi autori) della sintassi dei makefile,
in openwrt ogni pacchetto ha un Makefile dove si definiscono alcune
regole, ad esempio "scarica il tar.gz dei sorgenti da questo sito web,
compilalo con queste opzioni, per installarlo fai queste procedure". In
piu' nei pacchetti puoi trovare anche delle patch che servono ad
"aggiustare" il programma per farlo girare sugli embedded.
Per compilare del software (per curiosita'...che software fai?) quindi
ti basta creare un pacchetto per OpenWrt e compilarlo. In sostanza -se
hai fortuna- ti basterebbe solo fare un Makefile di poche righe e
mettere il tuo programma online.
Prova a dare un occhiata ai pacchetti che abbiamo creato noi:
https://svn.ninux.org/ninuxdeveloping/browser/packages
Riguardo alla domanda "si ma una volta che ho il kernel compilato come
lo installo sulla flash", ci sono diverse procedure: usando un
bootloader, jtag, seriale. La piu' semplice e' la prima. Prova a vedere
come si "flasha" ad esempio la NanoStation2 della ubiquity:
http://wiki.openwrt.org/OpenWrtDocs/Hardware/Ubiquiti/NanoStation2
Ciao,
Lorenzo
mbutubuntu ha scritto:
Mi server poter compilare del software ma ho visto che ci sono i vari
build-essential, make....
2) qualcuno di voi è riuscito ad installare una distro tradizionale
su una
Routerboard simile a quelle di ubiquity? o meglio, esistono delle
distro
debian-based che abbiano già un kernel compilato per architettura
MIPS 24k ?
Io no ma qualcuno (che probabilmente ci legge in lista) aveva
installato proprio una debian su un asus wl500g...
Spero che quel "qualcuno" si faccia sentire
ho letto che "Linux 2.4 and 2.6 support the 24K since 2005-01-19
[...]";
3) secondo voi com'è possibile compilare un kernel linux compatibile
MIPS su
una routerboard con una flash memory di 16 Mb a fronte di un
sorgente di
40++ Mb ????
E' possibile perche' il codice macchina occupa meno del codice "ascii"
e perche' nei sorgenti ci sono anche moduli o feature che possono non
venir compilati e perche' l'immagine del kernel linux e' compressa...
:)
Su questo siamo d'accordo, ma come copio i tarball nella flash della
RouterStation? mi sa che posso soltanto appoggiarmi ad un NFS, giusto no?
Grazie mille in anticipo
Nulla.
Ciao,
Clauz