Newsgroup: it.comp.os.linux.iniziare
Titolo: compilando2

hello,
questo è il séguito di un post un pò datato: dato che non ho risolto il 
problema ho ripostato :)
Ho trovato in /boot (con il nome di config-ide-2.4.18) quello che 
dev'essere il config standard della distro.
mit00 (ci sei ancora?) mi diceva: "Quando vuoi compilare un kernel e vuoi 
aggiungere dei moduli, devi caricare la vecchia config che è 
/usr/src/linux/.config se hai già ricompilato, altrimenti lo trovi in 
/boot/config-x.x.xx"
Ogni volta che ho compilato l'ho fatto in questo modo:
sono entrato in /usr/src/linux e, come da 'appunti di informatica libera', 
ho lanciato la coppia di comandi:
 # make mrproper
 # make menuconfig
Con quest'ultimo comando quale configurazione ho caricato?
Comunque, dopo aver compiuto le scelte dal menu, sono uscito, ignorando sia 
'Load an Alternate Configuration File' sia 'Save Configuration to an 
Alternate File ' ; alla domanda: 'Do you wish to save your new kernel 
configuration?' ho risposto di sì. Quindi ho lanciato i comandi:
# make dep ; make clean ; make bzImage
e, al termine della compilazione, i comandi:
# make modules ; make modules_install
Anche se durante il menuconfig non ho caricato una sola opzione come 
modulo, ho pensato che, abilitando comunque un kernel modulare, quando 
avessi voluto inserire qualche nuova caratteristica come modulo, avrei 
potuto farlo in qualsiasi momento ad es. con il comando # modprobe.
In /etc/rc.d/rc.modules, prima ancora di ricompilare, avevo infatti 
decommentato la riga che contiene il modulo per la mia scheda di rete:
# Intel EtherExpress PRO/100 PCI support:
/sbin/modprobe eepro100
Con la vecchia configurazione la faccenda funzionava e mi ritrovavo con 
scheda di rete riconosciuta e funzionante:
root@linux:~# ifconfig
eth0      Link encap:Ethernet  HWaddr XX:XX:XX:XX:XX:XX
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
	  ...
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
	  ...
Dopo avere ricompilato, al boot un warning del tipo:
modprobe eepro100: no such file or directory
mi avvisava che il modulo non veniva trovato.
Dove son finiti i moduli che ho compilato regolarmente con:
# make modules ; make modules_install ???
Che dovrei fà?
-- 
When childhood dies, its corpses are called adults.
                -- Brian Aldiss

 # make modules ; make modules_install ???
Come sempre in /lib/modules/`uname -r`
Per vedere la lista dei moduli installati vedi il file modules.dep
-- 
Sono un servitore del Fuoco Segreto, e reggo la fiamma di Anor.
A nulla ti servira' il fuoco oscuro, fiamma di Udun.
Torna nell'Ombra! Non puoi passare.

 il modulo.
L'ho compilato staticamente... è vero, non serve più caricare il modulo, ma a 
me è successo che il nuovo kernel non aveva voglia di avviarsi e perciò ho 
dovuto caricare la vecchia configurazione che, se ho ben capito finora, per 
usare la scheda aveva bisogno del modulo che nel frattempo è scomparso...
Quello che ancora :((( non capisco è che, se volessi mantenere la possibilità 
di caricare  con lilo diverse configurazioni (magari una per emergenza, che 
mi è stata utile), non saprei come fare perché ciascuna di queste abbia i 
propri moduli indipendentemente dalle altre.


 propri moduli indipendentemente dalle altre.
Se le versioni del kernel sono diverse non e' un problema (come ti ho detto
sopra), se invece stai ricompilando la stessa hai piu' possibilita':
-1 rinomini la directory dei moduli prima del modules_install (cosi' in caso
di emergenza riesci a bootare col kernel vecchio e puoi ripristinare la
directory)
-2 (-Penso- questa non l'ho mai provata direttamente pero' dovrebbe essere
piu' pulita perche' vede i moduli direttamente) giochi colla variabile
EXTRAVERSION del Makefile in /usr/src/linux/ mettendo ad esempio
EXTRAVERSION = -ck3
A questo punto la directory dei moduli creata sara' /lib/modules/2.4.18-ck3/
(perche' a quel punto uname -r di quel kernel sara' 2.4.18-ck3 ;) )
Spero di essere stato almeno un po' chiaro, qualsiasi dubbio tu abbia chiedi
pure, ciao.


 [cut]
[segue una specie di quick&easy modules howto]
L'hai fatta eccome! Sono passato dal buio alla luce... seguendo la fiamma di
Anor :)
