Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente | ||
smesh [2010/06/14 00:00] – luca | smesh [2014/07/03 14:57] (versione attuale) – modifica esterna 127.0.0.1 | ||
---|---|---|---|
Linea 1: | Linea 1: | ||
- | ===== Compilazione di Smesh per architettura MIPS ===== | + | b===== Compilazione di Smesh per architettura MIPS ===== |
=== Toolchain === | === Toolchain === | ||
Questo sarà lo strumento essenziale per poter compilare i sorgenti per architettura MIPS. L'ho ricavato da una compilazione di OpenWrt, quindi è testato e funzionante ed in più sfrutta le uClibc generando eseguibili molto contenuti. Lo allego {{: | Questo sarà lo strumento essenziale per poter compilare i sorgenti per architettura MIPS. L'ho ricavato da una compilazione di OpenWrt, quindi è testato e funzionante ed in più sfrutta le uClibc generando eseguibili molto contenuti. Lo allego {{: | ||
+ | |||
=== Preparazione alla compilazione === | === Preparazione alla compilazione === | ||
Linea 10: | Linea 10: | ||
* Estrarre anche {{: | * Estrarre anche {{: | ||
* Ora ci serve anche {{: | * Ora ci serve anche {{: | ||
- | * Per chiarezza ecco come devono essere le cartelle: | + | * Per chiarezza ecco come devono essere le cartelle: |
{{: | {{: | ||
- | === Modifica dei sorgenti === | + | * Copiare questa {{: |
+ | patch --dry-run --verbose -p1 -i build.patch | ||
+ | se questo è l' | ||
+ | Hmm... | ||
+ | The text leading up to this was: | ||
+ | -------------------------- | ||
+ | |--- smesh-src-v2.3-ORIG/ | ||
+ | |+++ smesh_proxy/ | ||
+ | -------------------------- | ||
+ | Patching file build using Plan A... | ||
+ | Hunk #1 succeeded at 16. | ||
+ | Hunk #2 succeeded at 30. | ||
+ | Hunk #3 succeeded at 209. | ||
+ | done | ||
+ | allora possiamo dare il comando non in dry-mode | ||
+ | patch --verbose -p1 -i build.patch | ||
+ | |||
+ | * Ora bisogna apportare un' | ||
+ | |||
+ | export CROSS="/ | ||
+ | dove in INSERIRE_PATH_ASSOLUTA si deve inserire la path completa del toolchain scaricato prima | ||
+ | |||
+ | === Modifica dei sorgenti === | ||
+ | |||
Ora dobbiamo applicare le nostre modifiche per poter far girare le trame di controllo di SMesh e Spines su un' | Ora dobbiamo applicare le nostre modifiche per poter far girare le trame di controllo di SMesh e Spines su un' | ||
* Scaricare le nostre {{: | * Scaricare le nostre {{: | ||
* Ora entrare rispettivamente in smesh-src-v2.3 e poi in spines per testare le patches con i seguenti comandi | * Ora entrare rispettivamente in smesh-src-v2.3 e poi in spines per testare le patches con i seguenti comandi | ||
+ | |||
patch --dry-run --verbose -p1 -i smesh.patch | patch --dry-run --verbose -p1 -i smesh.patch | ||
patch --dry-run --verbose -p1 -i spines.patch | patch --dry-run --verbose -p1 -i spines.patch | ||
Linea 78: | Linea 101: | ||
=== Compilazione === | === Compilazione === | ||
- | * Copiare quest' | + | * A questo punto dobbiamo compilare prima Spines. Modifichiamo il file build in |
- | | + | |
- | se questo è l' | + | BUILD_SPINES=1 |
- | | + | dove BUILD_SMESH va messo a 0 |
- | | + | |
- | | + | |
- | | + | |
- | | + | cd smesh_proxy/ |
- | -------------------------- | + | ./build |
- | | + | |
- | | + | la compilazione dovrebbe concludersi così |
- | | + | |
- | | + | |
- | | + | |
- | allora possiamo dare il comando | + | |
- | | + | |
+ | | ||
+ | ln -s PATH_ASSOLUTA/ | ||
+ | |||
+ | * Torniamo al file build e lo modifichiamo così | ||
+ | |||
+ | | ||
+ | BUILD_SPINES=0 | ||
+ | |||
+ | * Compiliamo Smesh | ||
+ | |||
+ | ./build | ||
+ | |||
+ | la compilazione dovrebbe concludersi così | ||
+ | |||
+ | SMesh build is ready on install directory | ||
+ | |||
+ | * Nella cartella ' | ||
+ | |||
+ | === Files di configurazione === | ||
+ | |||
+ | Ora sia Spines che SMesh supportano l' | ||
+ | Modifichiamo quindi i files di configurazione e di avvio all' | ||
+ | |||
+ | * Copiare questa {{:smesh:conf_patch.tar.gz|patch}} nella cartella ' | ||
+ | |||
+ | | ||
+ | patch --dry-run --verbose | ||
+ | |||
+ | se ok dare | ||
+ | |||
+ | patch --verbose | ||
+ | |||
+ | === Copiare Smesh === | ||
+ | |||
+ | | ||
+ | |||
+ | install/ | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | * Rendere eseguibili i binari e lo script di avvio con | ||
+ | |||
+ | chmod +x ' | ||
+ | |||
+ | === Lanciare Smesh === | ||
+ | |||
+ | * Ora c'è tutto il necessario per lanciare Smesh su una board MIPS (es. Ubiquiti RouterStationPro) | ||
+ | con il comando | ||
+ | |||
+ | | ||
+ | |||
+ | * Per abilitarlo all' | ||
+ | |||
+ | / | ||
+ | |||
+ | === Note x compilazione alix === | ||
+ | iproute dà errore nella compilazione, | ||
+ | |||
+ | i486-openwrt-linux-uclibc/sys-include/ | ||
+ | |||
+ | che si trova all' | ||
+ | |||
+ | ''/ | ||
+ | |||
+ | ''# | ||
+ | |||
+ | ''# | ||
- | * | + | ''# |