Newsgroup: it.comp.os.linux.iniziare
Titolo: Problema compilazione driver in Mandrake 9.2

Salve a tutti.
Ho un problema con l'installazione dei driver di Conexant forniti da Roberto nel
sito 
http://mio.discoremoto.virgilio.it/studiorebaudo
 (se riuscirò a farli
funzionare, diventerai il mio idolo!)
L'installazione con il file RPM contenuto nel file compresso HSFp_Linux va a
buon fine, ma all'avvio di hsfconfig mi da un errore, riportato in un file di
log (se me lo chiedete lo posso postare. Non lo faccio ora perchè mi sembra
lunghetto).
Cercando di capire quello che è successo, sono andato in
/usr/include/linux/version.h, che mi da problemi nell'installazione, a quanto
detto dal file di log già citato,e ho visto che riporta lo stesso messaggio di
errore, invece di essere un normale header:
#ifdef __KERNEL__
#error "======================================================="
#error "You should not include /usr/include/{linux,asm}/ header"
#error "files directly for the compilation of kernel modules."
#error ""
#error "glibc now uses kernel header files from a well-defined"
#error "working kernel version (as recommended by Linus Torvalds)"
#error "These files are glibc internal and may not match the"
#error "currently running kernel. They should only be"
#error "included via other system header files - user space"
#error "programs should not directly include <linux/*.h> or"
#error "<asm/*.h> as well."
#error ""
#error "To build kernel modules please do the following:"
#error ""
#error " o Have the kernel sources installed"
#error ""
#error " o Make sure that the symbolic link"
#error "   /lib/modules/`uname -r`/build exists and points to"
#error "   the matching kernel source directory"
#error ""
#error " o Now copy /boot/vmlinuz.version.h to"
#error "   /lib/modules/`uname -r`/build/include/linux/version.h"
#error ""
#error " o When compiling, make sure to use the following"
#error "   compiler option to use the correct include files:"
#error ""
#error "   -I/lib/modules/`uname -r`/build/include"
#error ""
#error "   instead of"
#error ""
#error "   -I/usr/include/linux"
#error ""
#error "   Please adjust the Makefile accordingly."
#error "======================================================="
#else
#define UTS_RELEASE "2.4.22"
#define LINUX_VERSION_CODE 132118
#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))
#endif
Il fatto è che mi si chiede di fare un link simbolico, per poter compilare il
driver, chiamato /lib/modules/`uname -r`/build, collegato alla directory dei
sorgenti del kernel.
E qua il mio primo problema, perchè non trovo questa directory. Mi potete dire
dove si trova (ho Mandrake 9.2 download edition)?
Inoltre, dopo aver effettuato questo link, devo copiare  /boot/vmlinuz.version.h
in /lib/modules/`uname -r`/build/include/linux/version.h. Il problema è che non
ho /boot/vmlinuz.version.h. Forse si trova da qualche altra parte?
Infine, devo sostituire nelle opzioni di compilazione -I/usr/include/linux con
-I/lib/modules/`uname -r`/build/include, e di cambiare di conseguenza il
makefile. Però, quale makefile, se uso lo script hsfconfig?
Se qulacuno potesse risolvere il mio problema, sarei veramente felice.
Grazie per le risposte
Daniele

 /boot/vmlinuz.version.h. Forse si trova da qualche altra parte?
anche lì intende il kernel con cui hai avviato che dovrebbe trovarsi
in /boot comunque non è necessario, guarda la configurazione del tuo
boot loader (lilo, grub quello che usi insomma) per capire quele è
l'immagine del kernel che utilizzi
ciao

 
Non ci sono, li devi scaricare: circa 32 Mbytes.
Ti conviene scaricare il source rpm da mandrake contribs, così non hai
problemi di minor version.
-- 
Lorenzo "paulatz" Paulatto, Trieste

 problemi di minor version.
Capisco... Certo che avrei fatto sinceramente a meno delle traduzioni
in cinese per avere lo spazio per i sorgenti.
Solo una cosa: sono andato in
ftp://bo.mirror.garr.it/mirrors/Mandrake/9.2/contrib/i586
 ed ho visto
i file sorgenti del kernel. Perň ci sono diversi file da scaricare
riguardo il kernel. Potresti essere piů preciso, per favore? Ero
propenso a scaricare il kernel 2.6, ma ho per ora il 2.4, e vorrei
cavarmela con questo, prima.
Daniele

 ciao
Ho fatto come hai detto tu, ed effettivamente c'è il file vmlinuz
nella cartella boot (fra l'altro è un collegamento simbolico ad un
altro file nella stessa cartella). Comunque, non riesco a trovare
vmlinuz.version.h Se è un file sorgente, comincio a pensare che non
c'erano nei CD. Tu ce l'hai questo file?
Daniele