Per la compilazione ho usato come ambiente VirtualBox installando una debian 7 minimal 32bit.
La configurazione che ho dato ala VM è:
- RAM: 6 Gb
- CPU: 4
- HDD: 30 Gb
Ho preferito abbondare per avere prestazioni migliori (risparmio del tempo) nella compilazione.
Partiamo….
Installare i seguenti pacchetti:
apt-get install gcc g++ binutils patch bzip2 flex bison make autoconf gettext unzip subversion libncurses5-dev ncurses-term zlib1g-dev gawk git-core libz-dev git asciidoc libssl-dev
Come utente normale (non come root) clonare nella proprima $HOME il git OpenWRT, io ho scelto Barrier Breaker
git clone git://git.openwrt.org/14.07/openwrt.git
Altri sorgenti sono reperibili dal repository https://dev.openwrt.org/wiki/GetSource
Entrare nella cartella openwrt ed eseguire questi comandi:
./scripts/feeds update –a && ./scripts/feeds install –a
make menuconfig
Scegli cosa installare e per quale dispositivo creare il firmware, salva ed esci.
Esegui il comando:
make V=99 -j 5
-j = Numero di CPU+1
dopo un po’ di tempo (puoi andare a cenare senza problemi), troverai i file binari nella cartella bin/TARGET_SCELTO/
Da salvarsi su una penna usb o diversamente il file md5sum ed i file *squashfs-factory.bin *squashfs-sysupgrade.bin attinenti al tuo router. Fare attenzione a caricare solo i firmware generati relativi al tuo router!
Un esempio del mio è:
openwrt-ar71xx-generic-tl-wdr3600-v1-squashfs-factory.bin
openwrt-ar71xx-generic-tl-wdr3600-v1-squashfs-sysupgrade.bin
Per cancellare i file di compilazione si possono usare i comandi
“make dirclean” pulisce le directory usate per la compilazione
“male distclean” usato per inizializzare una nuova compilazione
Consiglio: dopo aver clonato il git rinominare la cartella openwrt in openwrt-originale, per le compilazioni usare delle copie, es:
cp -R openwrt-originale openwrt-wdr3600
cd openwrt-wdr3600
.....
Buon divertimento! :)