Pagina 1 di 2

[Risolto]: Virtualbox: problemi compilazione moduli

Inviato: mar 18 giu 2013, 12:57
da james2221
ciao
slackware 14 86_64 reinstallato un paio di giorni fa a seguito problemi hardware.
Problema:

Codice: Seleziona tutto

bash-4.2#  /etc/rc.d/rc.vboxdrv setup
Stopping VirtualBox kernel modules ...done.
Recompiling VirtualBox kernel modules ...failed!
  (Look at /var/log/vbox-install.log to find out what went wrong)
bash-4.2# modprobe vboxdrv
FATAL: Module vboxdrv not found.
bash-4.2# 
dal che si deduce che non compila. Ho installato questa versione di VBox

Codice: Seleziona tutto

VirtualBox-4.2.12-84980-Linux_amd64
e i sorgenti

Codice: Seleziona tutto

kernel-source-3.2.29-noarch-1
.
Ho seguito questo vecchio thread che fa al caso mio viewtopic.php?f=1&t=34627&hilit=dkms&start=30pertanto ho verificato la installazione di

Codice: Seleziona tutto

gcc-g++-4.7.1-x86_64-1
gcc-4.7.1-x86_64-1
. Il mio utente è nel gruppo vboxusers ma niente da fare, non compila il modulo del kernel.
preziosi suggerimenti ?
grazie ciao

Re: Virtualbox: problemi compilazione moduli

Inviato: mar 18 giu 2013, 16:48
da boh
Ho anch'io una slack a 14 a 64bit e la stessa versione di virtual box che funziona perfettamente.
Come la stai installando? Pacchetto o installer di VB?

Io l'ho installata semplicemente dando il seguente comando (da root):

Codice: Seleziona tutto

sh VirtualBox-4.2.12-84980-Linux_amd64.run

Re: Virtualbox: problemi compilazione moduli

Inviato: mar 18 giu 2013, 17:02
da james2221
Ciao
ho installato esattissimamente come te, *.run.
Sembra però che il problema non sia Vbox ma il compilatore, almeno così ho dedotto dal thread viewtopic.php?f=1&t=34627&hilit=dkms.
Ho installato Slackware ieri ed è andato tutto benissimo, sia l'installazione che tutti i pacchetti che ho aggiunto (salvo slim,ho un problemino ma non fa parte di questa storia).
grazie ciao

Re: Virtualbox: problemi compilazione moduli

Inviato: mar 18 giu 2013, 17:13
da james2221
non sono abbastanza alfabetizzato per leggere il file di log relativo al modulo vboxdrv, lo allego cosicchè se qualcuno fosse capace di leggerlo...

Codice: Seleziona tutto

make KBUILD_VERBOSE=1 SUBDIRS=/tmp/vbox.0 SRCROOT=/tmp/vbox.0 CONFIG_MODULE_SIG= -C /lib/modules/3.2.29/build modules
test -e include/generated/autoconf.h -a -e include/config/auto.conf || (		\
echo;								\
echo "  ERROR: Kernel configuration is invalid.";		\
echo "         include/generated/autoconf.h or include/config/auto.conf are missing.";\
echo "         Run 'make oldconfig && make prepare' on kernel src to fix it.";	\
echo;								\
/bin/false)
mkdir -p /tmp/vbox.0/.tmp_versions ; rm -f /tmp/vbox.0/.tmp_versions/*
make -f scripts/Makefile.build obj=/tmp/vbox.0
  gcc -Wp,-MD,/tmp/vbox.0/linux/.SUPDrv-linux.o.d  -nostdinc -isystem /usr/lib64/gcc/x86_64-slackware-linux/4.7.1/include -I/usr/src/linux-3.2.29/arch/x86/include -Iarch/x86/include/generated -Iinclude  -include /usr/src/linux-3.2.29/include/linux/kconfig.h -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -O2 -m64 -mno-red-zone -mcmodel=kernel -maccumulate-outgoing-args -fstack-protector -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -fno-omit-frame-pointer -fno-optimize-sibling-calls -pg -include /tmp/vbox.0/include/VBox/SUPDrvMangling.h -I/lib/modules/3.2.29/build/include -I/tmp/vbox.0/ -I/tmp/vbox.0/include -I/tmp/vbox.0/r0drv/linux -I/tmp/vbox.0/vboxdrv/ -I/tmp/vbox.0/vboxdrv/include -I/tmp/vbox.0/vboxdrv/r0drv/linux -D__KERNEL__ -DMODULE -DRT_OS_LINUX -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -DVBOX_WITH_HARDENING -DCONFIG_VBOXDRV_AS_MISC -DRT_ARCH_AMD64 -DVBOX_WITH_64_BITS_GUESTS  -DMODULE  -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(SUPDrv_linux)"  -D"KBUILD_MODNAME=KBUILD_STR(vboxdrv)" -c -o /tmp/vbox.0/linux/SUPDrv-linux.o /tmp/vbox.0/linux/SUPDrv-linux.c
gcc: error trying to exec 'as': execvp: No such file or directory
In file included from /tmp/vbox.0/r0drv/linux/the-linux-kernel.h:120:0,
                 from /tmp/vbox.0/linux/SUPDrv-linux.c:32:
include/linux/nls.h: In function 'nls_nullsize':
include/linux/nls.h:98:2: warning: pointer targets in passing argument 2 of 'codepage->uni2char' differ in signedness [-Wpointer-sign]
include/linux/nls.h:98:2: note: expected 'unsigned char *' but argument is of type 'char *'
make[2]: *** [/tmp/vbox.0/linux/SUPDrv-linux.o] Error 2
make[1]: *** [_module_/tmp/vbox.0] Error 2
make: *** [vboxdrv] Error 2

Re: Virtualbox: problemi compilazione moduli

Inviato: mar 18 giu 2013, 20:13
da targzeta
Hai fatto quello che ti chiede di fare? Vai nella directory dei sorgenti del kernel:

Codice: Seleziona tutto

cd /lib/modules/$(uname -r)/source
poi copiati il config come .config

Codice: Seleziona tutto

zcat /proc/config.gz > .config
e poi dai :

Codice: Seleziona tutto

make prepare
Quindi riprova a compilare i moduli di vbox.

Emanuele

Re: Virtualbox: problemi compilazione moduli

Inviato: mar 18 giu 2013, 21:59
da james2221
ciao
funzionare non funziona, ma quanto meno ho capito cosa sto facendo:entro nella directory dei sorgenti, prendo un file di configurazione, presumo di default, lo scompatto e lo salvo nella directory di prima, ma quando faccio

Codice: Seleziona tutto

make prepare
mi da i seguenti errori

Codice: Seleziona tutto

bash-4.2# cd /lib/modules/$(uname -r)/source
bash-4.2# zcat /proc/config.gz > .config
bash-4.2# make prepare
  HOSTCC  scripts/basic/fixdep
In file included from /usr/include/bits/posix1_lim.h:157:0,
                 from /usr/include/limits.h:145,
                 from /usr/lib64/gcc/x86_64-slackware-linux/4.7.1/include-fixed/limits.h:169,
                 from /usr/lib64/gcc/x86_64-slackware-linux/4.7.1/include-fixed/syslimits.h:7,
                 from /usr/lib64/gcc/x86_64-slackware-linux/4.7.1/include-fixed/limits.h:34,
                 from scripts/basic/fixdep.c:114:
/usr/include/bits/local_lim.h:39:26: fatal error: linux/limits.h: No such file or directory
compilation terminated.
make[2]: *** [scripts/basic/fixdep] Error 1
make[1]: *** [scripts_basic] Error 2
  HOSTCC  arch/x86/tools/relocs
In file included from /usr/include/errno.h:36:0,
                 from arch/x86/tools/relocs.c:6:
/usr/include/bits/errno.h:25:26: fatal error: linux/errno.h: No such file or directory
compilation terminated.
make[1]: *** [arch/x86/tools/relocs] Error 1
make: *** [archscripts] Error 2
e di conseguenza

Codice: Seleziona tutto

bash-4.2# /etc/rc.d/rc.vboxdrv setup
Stopping VirtualBox kernel modules ...done.
Recompiling VirtualBox kernel modules ...failed!
  (Look at /var/log/vbox-install.log to find out what went wrong)
bash-4.2# modprobe vboxdrv
FATAL: Module vboxdrv not found.
Mi spiace ma non sono in grado di interpretare l'output di make prepare.

Grazie

Re: Virtualbox: problemi compilazione moduli

Inviato: mar 18 giu 2013, 23:34
da targzeta
Il pacchetto degli header lo hai installato? Si chiama kernel-header ed è sotto la directory d/ del DVD. Ovviamente deve essere per lo stesso kernel su cui stai cercando di compilare i driver.

Emanuele

P.S. Il config non è quello di default, è quello che è stato usato per compilare il tuo kernel attivo in quel momento (è sotto /proc).

Re: Virtualbox: problemi compilazione moduli

Inviato: mer 19 giu 2013, 8:17
da james2221
Il pacchetto degli header lo hai installato?
si, c'è, 3.2.29.
ho notato che stamani rispetto a ieri l'errore di make prepare è diverso:

Codice: Seleziona tutto

bash-4.2# cd /lib/modules/$(uname -r)/source
bash-4.2# make prepare
  HOSTCC  scripts/basic/fixdep
gcc: error trying to exec 'as': execvp: No such file or directory
make[2]: *** [scripts/basic/fixdep] Error 1
make[1]: *** [scripts_basic] Error 2
  HOSTCC  arch/x86/tools/relocs
gcc: error trying to exec 'as': execvp: No such file or directory
make[1]: *** [arch/x86/tools/relocs] Error 1
make: *** [archscripts] Error 2
ha un suo significato ?
grazie

Re: Virtualbox: problemi compilazione moduli

Inviato: mer 19 giu 2013, 9:00
da drumslack
Ciao,
Tempo fa ho avuto un problema simile al tuo tentando di compilare virtualbox-kernel, causa un mio errore nel dare un 'make mrproper' ai sorgenti del kernel dopo averlo ricompilato (esperimenti malsani). La soluzione è stata ricompilare il kernel con 'make oldconfig' e 'make prepare'.
Nel tuo caso, visto che usi il kernel stock, ti basterebbe reinstallare solo i sorgenti e riprovare a ricompilare virtualbox-kernel.

EDIT: i sorgenti del kernel li trovi sul DVD di slackware in /k

Re: Virtualbox: problemi compilazione moduli

Inviato: mer 19 giu 2013, 12:12
da james2221
ciao
la reinstallazione dei sorgenti e degli headers

Codice: Seleziona tutto

kernel-source-3.2.29-noarch-1.txz
kernel-headers-3.2.29-x86-1.txz
l' avevo fatta ieri. rifatto le procedure suggerite ma niente. Però mi è venuto un dubbio, il file log ad un certo punto suggerisce:

Codice: Seleziona tutto

Run 'make oldconfig && make prepare' on kernel src to fix it.";
e @targzeta mi ha detto di fare
cd /lib/modules/$(uname -r)/source

poi copiati il config come .config

Codice: Seleziona tutto
zcat /proc/config.gz > .config

e poi dai :

Codice: Seleziona tutto
make prepare

Quindi riprova a compilare i moduli di vbox.
senza citare nessun make oldconfig. A titolo di esperimento alla cieca ho dato ugualmente il make oldconfig ma i risultati sono sempre quelli.
Mi èperfino venuto un dubbio relativamente al pacchetto

Codice: Seleziona tutto

gcc-g++-4.7.1-x86_64-1.txz
o devo reinstallare ?
qualora fosse consigliato nessun problema, al momento sto lavorando comunque con Arch....
grazie

Re: Virtualbox: problemi compilazione moduli

Inviato: mer 19 giu 2013, 14:14
da drumslack
Fare un 'make oldconfig' senza poi dare 'make all' è un po inutile. Penso che @targzeta l'abbia omesso per questo motivo.
In ogni modo ha poco senso ricompilare i sorgenti del kernel se hai reinstallato quelli del DVD e che già erano stati compilati con quel .config.
Poi, a titolo di informazione, prima di dare 'make oldconfig' bisognerebbe pulire i sorgenti con 'make mrproper', ma esula dal tuo caso.

Prova a rimuovere di nuovo il pacchetto dei sorgenti del kernel (kernel-source-3.2.29-noarch-1.txz) e reinstallali senza poi dare nessun altro comando (intendo make oldconfig e make prepare), poi se hai la possibilità riavvia la macchina e riprova a compilare virtualbox-kernel.

Re: Virtualbox: problemi compilazione moduli

Inviato: mer 19 giu 2013, 14:39
da james2221
ciao
nessuna novità:
removepkg kernel-source
installpkg /home/piero/Downloads/kernel-source-3.2.29-noarch-1.txz (da dvd)
spento
riacceso

Codice: Seleziona tutto

bash-4.2# /etc/rc.d/rc.vboxdrv setup
Stopping VirtualBox kernel modules ...done.
Recompiling VirtualBox kernel modules ...failed!
  (Look at /var/log/vbox-install.log to find out what went wrong)
e il file di log dell'errore è sempre quello.
che faccio ? reinstallo o rischio di trovarmi nella stessa situazione?

ciao grazie

non è un errore di gcc per caso ???

Re: Virtualbox: problemi compilazione moduli

Inviato: mer 19 giu 2013, 16:18
da drumslack
ciao,
ho appena provato a compilare virtualbox-kernel: nessun problema, ma sono su slackware14 32bit con un kernel 3.4.47, inoltre ho usato gli slackbuild di sbo. Non saprei cos'altro dire. Prima di imputare l'errore a gcc, che peraltro scongiurerei, io proverei a compilare con gli slackbuild di sbo se non hai preferenze.

Re: Virtualbox: problemi compilazione moduli

Inviato: mer 19 giu 2013, 17:47
da boh
Visto che sei su una slackware 14, perchè non provi ad aggiornare il kernel tramite slackpkg?
È un aggiornamento ufficiale, potrebbe risolvere il problema e non ti richiede alcuna compilazione.
Se vuoi provare, fai così:

Codice: Seleziona tutto

slackpkg update gpg
slackpkg update
slackpkg upgrade-all
lilo -v
Il primo comando ti serve solo se non hai mai eseguito slackpkg; in tal caso devi decommentare un mirror nel file /etc/slackpkg/mirrors.

Re: Virtualbox: problemi compilazione moduli

Inviato: mer 19 giu 2013, 19:14
da james2221
ciao
non va ma perlomeno possiamo ragionevolmente presume che il kernel non c'entri: updatato da 3.2.29 a 3.2.45 kernel, headers, modules & sources.
Spento e riacceso, dato

Codice: Seleziona tutto

bash-4.2# /etc/rc.d/rc.vboxdrv setup
Stopping VirtualBox kernel modules ...done.
Recompiling VirtualBox kernel modules ...failed!
  (Look at /var/log/vbox-install.log to find out what went wrong)
bash-4.2# 
e anche, tanto per farmi insultare dal terminale,

Codice: Seleziona tutto

bash-4.2# modprobe vboxdrv
FATAL: Module vboxdrv not found.
bash-4.2# 
il log di errore è sempre quello.
sicuri che nn c'entri nulla io compilatore ?

GRAZIE