I just up-graded to the latest version of the stable 11.4 64bit kernel on my laptop and it appears that the repositories have not compiled the VirtualBox driver module for the current kernel …
When I make /vboxdrv setup the message is:
Recompiling VirtualBox vboxadd kernel module, NOT. It has been packaged
I think this means that the installed module will not recompile has it was packaged.
My kernel version is the lattest :
2.6.37.6-0.5-1
And my VirtualBox was installed from the Virtualization repos (4.0.8.11-1) even made the Vendor change and all.
The version Before the lattest (4.0.4-1.6) did not work either. With the same problem.
It is very easy to install VirtualBox from the Sun site and every time there is a Kernel up-date one can always make /etc/vboxdrv setup.
I usually worked with Virtualbox like that for many years.
But if someone could make the repos up-to-date it would likely help our less experienced users.
For those in a hurry to get VB working I also made:
insmod /lib/modules/2.6.37.6-0.5-desktop/updates/vboxdrv.ko
And the module gets loaded and everything works … maybe it is not a problem of recompiling …
zypper ar -f http://download.virtualbox.org/virtualbox/rpm/opensuse/11.4/ virtualbox
zypper refresh
installing VirtualBox from there
zypper in VirtualBox-4.0
the latest version is 4.0.10r72479
vboxmanage -v
In order to have the module compiled while installing VirtualBox for the first time it’s necessary to install the kernel sources and the compiler BEFORE VirtualBox.
The following scripts may be useful while dealing with VirtualBox
Notice that running service vboxdrv setup is not a big deal (but modautocompile can rebuild other modules as well*) and updating the extensions pack doesn’t seem to be necessary (however it’s nice to have that possibility).
using it for the ati module is not necessary anymore since the fglrx package installs a similar service. I don’t know about nvidia.
I’ve installed suse 11.4 today and I’m not able to get VB running. I have tried several things I’ve found here and there, to no avail. I’d really appreciate some help.
I came to this page because after re+uninstalling VB several times from the two usual repos, I ended up getting the “… NOT.” message.
I have just done this. vboxmanage tells me that my kernel is 2.6.37.1-1.2-desktop but I thought I installed 2.6.37.6-0.5-desktop… I am quite a newbie in these things. On the other hand…
… just in case, I tried this I got “file not found”:
Now, with /etc/init.d/vboxdrv setup I get a different failure, I am told to check a certain log file:
more /var/log/vbox-install.log
Makefile:172: Warning: using /usr/src/linux as the source directory of your Linux kernel. If this is not correct, specify KERN_DIR=<directory> and run Make again.
make KBUILD_VERBOSE=1 SUBDIRS=/tmp/vbox.0 SRCROOT=/tmp/vbox.0 -C /usr/src/linux 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)
ERROR: Kernel configuration is invalid.
include/generated/autoconf.h or include/config/auto.conf are missing.
Run 'make oldconfig && make prepare' on kernel src to fix it.
mkdir -p /tmp/vbox.0/.tmp_versions ; rm -f /tmp/vbox.0/.tmp_versions/*
WARNING: Symbol version dump /usr/src/linux-2.6.37.6-0.5/Module.symvers
is missing; modules will have no dependencies and modversions.
make -f scripts/Makefile.build obj=/tmp/vbox.0
/tmp/vbox.0/Makefile:172: Warning: using /usr/src/linux as the source directory of your Linux kernel. If this is not correct, specify KERN_DIR=<directory> and run Make again.
gcc -Wp,-MD,/tmp/vbox.0/linux/.SUPDrv-linux.o.d -nostdinc -isystem /usr/lib/gcc/i586-suse-linux/4.5/include -I/usr/src/linux-2.6.37.6-0.5/arch/x86/include -Iinclude -include include/generated/autoconf.h -D__KERNEL__ -Wall -Wundef -Ws
trict-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 -DCONFIG_AS_CFI
_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -fomit-frame-pointer -DCC_HAVE_ASM_GOTO -include /tmp/vbox.0/include/VBox/SUPDrvMangling.h -I/usr/src/linux/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_HARDE
NING -DCONFIG_VBOXDRV_AS_MISC -DRT_ARCH_X86 -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
/tmp/vbox.0/linux/SUPDrv-linux.c:1:0: error: code model ‘kernel’ not supported in the 32 bit mode
/tmp/vbox.0/linux/SUPDrv-linux.c:1:0: sorry, unimplemented: 64-bit mode not compiled in
make[2]: *** [/tmp/vbox.0/linux/SUPDrv-linux.o] Error 1
make[1]: *** [_module_/tmp/vbox.0] Error 2
make: *** [vboxdrv] Error 2
I have no clue… looks like there may be something else to do with the kernel, or its source, or… ??
Well, your questions pointed me in the right direction! My kernel was an older version (even the link you asked me about was pointing to that newer version). I updated it to 2.6.37.6-0.5-desktop and then /vboxdrv setup worked like a charm. Now I have a shiny brand new VM at my feet