<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://wiki.bologna.ninux.org/mediawiki/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wiki.bologna.ninux.org/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Diguz</id>
		<title>NinuxBO - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.bologna.ninux.org/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Diguz"/>
		<link rel="alternate" type="text/html" href="https://wiki.bologna.ninux.org/mediawiki/index.php/Special:Contributions/Diguz"/>
		<updated>2026-07-11T19:52:23Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.19.20+dfsg-0+deb7u3</generator>

	<entry>
		<id>https://wiki.bologna.ninux.org/mediawiki/index.php/CompilareDaOpenWrt</id>
		<title>CompilareDaOpenWrt</title>
		<link rel="alternate" type="text/html" href="https://wiki.bologna.ninux.org/mediawiki/index.php/CompilareDaOpenWrt"/>
				<updated>2015-01-14T23:30:13Z</updated>
		
		<summary type="html">&lt;p&gt;Diguz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Questa piccola guida server a compilare libremesh partendo dai sorgenti di openwrt.&lt;br /&gt;
&lt;br /&gt;
Su una macchina debian installare i seguenti pacchetti(aggiungere pacchetti necessari volta per volta): &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;aptitude install libncurses5-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Prima di tutto scaricare i sorgenti di openwrt&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;$git clone git://git.openwrt.org/openwrt.git&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
entrare nella cartella appena scaricata da git&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;$cd openwrt/&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
copiare il file feed di default in modo che sia utilizzabile&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;$cp feeds.conf.default feeds.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
quindi editare il fil feeds.conf appena creato&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;$vi feeds.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e aggiungere le seguenti linee&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;src-git lime https://github.com/libre-mesh/lime-packages.git&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;src-git libremap git://github.com/libremap/libremap-agent-openwrt.git&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
nel caso si voglia lavorare col ramo di sviluppo sostituire questa&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;src-git lime https://github.com/libre-mesh/lime-packages.git&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
con questa&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;src-git lime https://github.com/libre-mesh/lime-packages.git;develop&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
eseguire il seguente blocco di comandi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; git pull &amp;amp;&amp;amp; rm -rf feeds/lime &amp;amp;&amp;amp; rm -rf feeds/libremap &amp;amp;&amp;amp; scripts/feeds update -a &amp;amp;&amp;amp; scripts/feeds install -a &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
make clean inizialmente chiedera' di procedere al menuconfig...potete fare exit e rimandare questa parte.&lt;br /&gt;
A questo punto e' possibile lanciare la configurazione con:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;make menuconfig &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Bisogna: &lt;br /&gt;
&lt;br /&gt;
* prima di tutto disabilitare &amp;quot;dnsmasq&amp;quot; in &amp;quot;Base System&amp;quot; &lt;br /&gt;
* andare in &amp;quot;LiMe&amp;quot; e selezionare &amp;quot;lime-full&amp;quot; (lime-full deve avere la selezione [*] e non [M], vedi nota sotto)&lt;br /&gt;
* in &amp;quot;LiMe&amp;quot; deselezionare il pacchetto &amp;quot;lime-proto-wan&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Ho caricato un file di configurazione su https://owncloud.sheratan.it/owncloud/public.php?service=files&amp;amp;t=88c42cd83dcd86e50ef2042b2924b3aa probabilmente make oldconfig dovrebbe essere in grado di recuperare i settings anche di fronte ad evoluzioni.&lt;br /&gt;
&lt;br /&gt;
per velocizzare la compilazione e produrre i files per una specifico hardware&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Target Profile&amp;quot; dove scegliere per quale hardware compilare. (Questo riduce di molto i tempi di compilazione)&lt;br /&gt;
&lt;br /&gt;
Ora bisogna fare delle valutazioni in base alla flash disponibile sul dispositivo che andra' ad ospitare il nostro firmware:&lt;br /&gt;
nel caso di una flash piccola(4mb) potrebbe essere necessario rimuovere dei pacchetti(lime-debug e lime-webui sono sacrificabili, per questo caso deselezionare lime-full e selezionare le singole voci da abilitare) , nel ramo di sviluppo sono implementate tecniche per ridurre ulteriormente la richiesta di spazio del firmware compilato. &lt;br /&gt;
&lt;br /&gt;
Selezionare anche il target system corretto: la famiglia del processore della propria CPE e' individuabile sul sito di openwrt: per i tpl841 e' atheros AR7x/AR9x.&lt;br /&gt;
&lt;br /&gt;
'''ATTENZIONE:''' se si cambia l'architettura (target) si perderanno le altre scelte (dovrete riselezionare lime-full o comunque le singole voci).&lt;br /&gt;
&lt;br /&gt;
Una volta terminata la configurazione si può compilare il firmware con il comando&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;make &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
per velocizzare la compilazione si può usare&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;make -j ''n''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
dove ''n'' è uguale al numero dei core più uno.&lt;br /&gt;
&lt;br /&gt;
Se il processo di compilazione giungera' a buon fine troverete tutti il materiale prodotto nella cartella ./bin:&lt;br /&gt;
ovviamente vengono prodotti i firmware per tutte le macchine supportate per il target selezionato, per il mio tplink tl-wr841nd V8 dovro' scegliere tra&lt;br /&gt;
&lt;br /&gt;
 -rw-r--r-- 1 thegamer thegamer 3.8M May 30 12:53 bin/ar71xx/openwrt-ar71xx-generic-tl-wr841n-v8-squashfs-factory.bin&lt;br /&gt;
&lt;br /&gt;
dedicata al caso in cui si faccia l'upgrade da firmware originale&lt;br /&gt;
&lt;br /&gt;
 -rw-r--r-- 1 thegamer thegamer 2.9M May 30 12:53 bin/ar71xx/openwrt-ar71xx-generic-tl-wr841n-v8-squashfs-sysupgrade.bin&lt;br /&gt;
&lt;br /&gt;
dedicata agli update da openwrt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
NOTA bene:&lt;br /&gt;
per creare un firmware compatibile con il resto dei dispositivi di Bologna Ninux, e' necessario passare a Li-Me la configurazione corretta, sostituendo prima della compilazione del firmware il file feeds/lime/packages/lime-system/files/etc/config/lime con il seguente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# Beware this file is not supposed to store specific configuration, like &amp;quot;config net eth0&amp;quot;&lt;br /&gt;
# System option&lt;br /&gt;
&lt;br /&gt;
config lime system&lt;br /&gt;
option  hostname 'NinuxBoNode-%M4%M5%M6'                                # Parametrizable hostname \Mn\ will be substituted with the n'th byte of the primary_dev MAC&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# Network general option&lt;br /&gt;
&lt;br /&gt;
config lime network&lt;br /&gt;
option primary_interface eth0                                                 # The mac address of this device will be used in different places&lt;br /&gt;
option main_ipv4_address '10.51.%M5.%M6/16'                             # Parametrizablezable main IPv4 address \Mn\ will be substituted with the n'th byte of the primary_dev MAC&lt;br /&gt;
option main_ipv6_address '2001:db8::%M5%M6/64'                       # Parametrizablezableable main IPv6 address \Mn\ will be substituted with the n'th byte of the primary_dev MAC&lt;br /&gt;
list protocols adhoc&lt;br /&gt;
list protocols lan&lt;br /&gt;
list protocols anygw                                                                          # Refer to http://libre-mesh.org/projects/libre-mesh/wiki/Anygw&lt;br /&gt;
list protocols batadv:%N1                                               # Define virtual interface name es: bat0.11&lt;br /&gt;
list protocols bmx6:13                                                  # Define virtual interface name es: bm6.13&lt;br /&gt;
list resolvers 208.67.222.222                                          #        DNS servers node will use&lt;br /&gt;
list resolvers 2620:0:ccc::2                                           #open DNS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# WiFi general options&lt;br /&gt;
&lt;br /&gt;
config lime wifi  &lt;br /&gt;
option channel_2ghz '11'&lt;br /&gt;
option          channel_5ghz '48'&lt;br /&gt;
list modes 'ap'&lt;br /&gt;
list modes 'adhoc'&lt;br /&gt;
option ap_ssid                  'NinuxBO'&lt;br /&gt;
option adhoc_ssid 'NinuxBO-mesh'&lt;br /&gt;
option adhoc_bssid 'de:d1:c0:c0:d1:ce'                                 #vecchio mac:'ca:fe:00:c0:ff:ee'&lt;br /&gt;
option adhoc_mcast_rate_2ghz '24000'&lt;br /&gt;
option adhoc_mcast_rate_5ghz '6000'&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si può applicare questa configurazione anche dopo aver compilato e installato il firmware sul dispositivo con i seguenti passi:&lt;br /&gt;
&lt;br /&gt;
Copiare il file precedente sul dispositivo appena flashato come &amp;lt;code&amp;gt;/etc/config/lime &amp;lt;/code&amp;gt;  ed eseguire &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; lime-config &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e poi &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; uci commit &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si noti che la rete ipv4 segnata nel file di configurazione è parte della /15 assegnata a NinuxBO mentre la rete ipv6 ha ancora un indirizzamento generico.&lt;/div&gt;</summary>
		<author><name>Diguz</name></author>	</entry>

	</feed>