problema compilazione

Se avete problemi con l'installazione e la configurazione di Slackware postate qui. Non usate questo forum per argomenti generali... per quelli usate Gnu/Linux in genere.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware, se l'argomento è generale usate il forum Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
blackman85
Linux 2.x
Linux 2.x
Messaggi: 333
Iscritto il: dom 22 giu 2008, 14:41
Slackware: 13.1 x86_64
Kernel: 2.6.33.4
Desktop: kde 4.4

problema compilazione

Messaggio da blackman85 »

compilando i driver patchati per rtl8187 ricevo il seguente errore

Codice: Seleziona tutto

/usr/bin/make -C /lib/modules/2.6.36-smp/build M=/usr/src/drivers/rtl8187_linux_26.1010.0622.2006/ieee80211 modules
make[2]: Entering directory `/usr/src/linux-2.6.36'
  CC [M]  /usr/src/drivers/rtl8187_linux_26.1010.0622.2006/ieee80211/ieee80211_softmac.o
  CC [M]  /usr/src/drivers/rtl8187_linux_26.1010.0622.2006/ieee80211/ieee80211_rx.o
/usr/src/drivers/rtl8187_linux_26.1010.0622.2006/ieee80211/ieee80211_rx.c:48:28: error: linux/autoconf.h: No such file or directory
make[3]: *** [/usr/src/drivers/rtl8187_linux_26.1010.0622.2006/ieee80211/ieee80211_rx.o] Error 1
make[2]: *** [_module_/usr/src/drivers/rtl8187_linux_26.1010.0622.2006/ieee80211] Error 2
make[2]: Leaving directory `/usr/src/linux-2.6.36'
make[1]: *** [modules] Error 2
make[1]: Leaving directory `/usr/src/drivers/rtl8187_linux_26.1010.0622.2006/ieee80211'
make: *** [all] Error 2
mi dice che non trova autoconf.h? Come è possibile? Ho installati correttamente i pkg: autoconf automake e libtool....
Grazie....

Avatar utente
phobos3576
Staff
Staff
Messaggi: 2980
Iscritto il: dom 17 apr 2005, 0:00
Slackware: 13.1
Kernel: 2.6.37-smp
Desktop: KDE 4.5.3

Re: problema compilazione

Messaggio da phobos3576 »

In quale directory hai i sorgenti del kernel?

Non mi torna il parametro:

Codice: Seleziona tutto

M=/usr/src/drivers
Non dovrebbe essere /usr/src/linux/drivers?

Avatar utente
blackman85
Linux 2.x
Linux 2.x
Messaggi: 333
Iscritto il: dom 22 giu 2008, 14:41
Slackware: 13.1 x86_64
Kernel: 2.6.33.4
Desktop: kde 4.4

Re: problema compilazione

Messaggio da blackman85 »

ho lanciato il comando

Codice: Seleziona tutto

airdriver-ng compile 35
e airdriver ha scaricato il pacchetto in /usr/src/linux e poi non so come ha creato una directory in /usr/src/ di nome drivers che prima non c'era....comunque i sorgenti del kernel sono nella solita directory /usr/src/linux...

Avatar utente
Calzo
Linux 1.x
Linux 1.x
Messaggi: 112
Iscritto il: sab 6 ott 2007, 22:21
Slackware: 10.2 | 13
Desktop: Fluxbox | KDE
Località: MN

Re: problema compilazione

Messaggio da Calzo »

phobos3576 ha scritto:Non dovrebbe essere /usr/src/linux/drivers?
Se non compili il driver direttamente nel kernel quello indica solo dove vai a prendere i sorgenti. Secondo me è giusto.

Quello che per me manca è l'inclusione degli header. Infatti l'errore dice che non trova il file linux/autoconf.h. La linea di compilazione secondo me dovrebbe essere simile a questa:

Codice: Seleziona tutto

/usr/bin/make -C /lib/modules/2.6.36-smp/build -I /lib/modules/<tuo_kernel>/build/include M=/usr/src/drivers/rtl8187_linux_26.1010.0622.2006/ieee80211 modules
controlla che nel make file sia definita la KERNELDIR, ossia se è presente una linea tipo questa:

Codice: Seleziona tutto

KERNELDIR ?= /lib/modules/$(shell uname -r)/build
bye

Avatar utente
Calzo
Linux 1.x
Linux 1.x
Messaggi: 112
Iscritto il: sab 6 ott 2007, 22:21
Slackware: 10.2 | 13
Desktop: Fluxbox | KDE
Località: MN

Re: problema compilazione

Messaggio da Calzo »

Oops... no scusate ho detto una c@77@ta.
O meglio, credo di aver capito perchè non te li compila: il file ieee80211_rx.c include linux/autoconf.h, ma questo era così fino al kernel 2.6.32.x. Io non ho il 2.6.33, ma il 2.6.34/35/36 e dal 2.6.34 questo file è stato messo in include/generated/autoconf.h, quindi puoi provare 2 cose secondo me:
1. prova a modificare i sorgenti sostituendo linux/autoconf.h con generated/autoconf.h
2. fai un link simbolico nei sorgenti (/usr/src/linux/include/linux/) che puntino a questo file

spero funzioni e che sia questo il problema
bye

Avatar utente
targzeta
Iper Master
Iper Master
Messaggi: 6643
Iscritto il: gio 3 nov 2005, 14:05
Nome Cognome: Emanuele Tomasi
Slackware: 64-current
Kernel: latest stable
Desktop: IceWM
Località: Carpignano Sal. (LE) <-> Pisa

Re: problema compilazione

Messaggio da targzeta »

Secondo me semplicemente il driver è vecchio. Posso sbagliare ma il file autoconf.h è stato spostato in 'include/generated/autoconf.h' mentre il driver prova a cercare 'include/linux/autoconf.h'.

Emanuele

Ops, è la stesso soluzione di Calzo...sorry
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama

Avatar utente
blackman85
Linux 2.x
Linux 2.x
Messaggi: 333
Iscritto il: dom 22 giu 2008, 14:41
Slackware: 13.1 x86_64
Kernel: 2.6.33.4
Desktop: kde 4.4

Re: problema compilazione

Messaggio da blackman85 »

Ho risolto, avevate ragione il driver era vecchio e quindi aveva linux/autoconf.h al posto di generated/autoconf.h!
Thanks! :thumbright:

Rispondi