I’m running 12.2 64-bit and have spent the last few days reading posts and watching youtube vids trying to get virtual vox running and now have come to the point of taking up your time.
After one click installing the 64 bit version from software.opensuse.org:, I now get the following error after I get a drive built/created and before I can load another 64-bit OS onto it.
bill # /etc/init.d/vboxdrv setup
Stopping VirtualBox kernel modules done
Uninstalling old VirtualBox DKMS kernel modules/etc/init.d/vboxdrv: line 304: /usr/share/virtualbox/src/vboxhost/do_dkms: No such file or directory
done
Trying to register the VirtualBox kernel modules using DKMS/etc/init.d/vboxdrv: line 329: /usr/share/virtualbox/src/vboxhost/do_dkms: No such file or directory
failed
(Failed, trying without DKMS)
Recompiling VirtualBox kernel modules failed
(Look at /var/log/vbox-install.log to find out what went wrong)
I looked and the path it was looking for does not even come close to existing and bellow is what shows up in the log
/etc/init.d/vboxdrv: line 337: /usr/share/virtualbox/src/vboxhost/build_in_tmp: No such file or directory
On 02/27/2013 06:26 PM, HBill wrote:
>
> Hi guys/gals,
>
> I’m running 12.2 64-bit and have spent the last few days reading posts
> and watching youtube vids trying to get virtual vox running and now have
> come to the point of taking up your time.
>
> After one click installing the 64 bit version from
> ‘software.opensuse.org:’
> (http://software.opensuse.org/package/virtualbox), I now get the
> following error after I get a drive built/created and before I can load
> another 64-bit OS onto it.
>
>
>
> Code:
> --------------------
> bill # /etc/init.d/vboxdrv setup
> Stopping VirtualBox kernel modules done
> Uninstalling old VirtualBox DKMS kernel modules/etc/init.d/vboxdrv: line 304: /usr/share/virtualbox/src/vboxhost/do_dkms: No such file or directory
> done
> Trying to register the VirtualBox kernel modules using DKMS/etc/init.d/vboxdrv: line 329: /usr/share/virtualbox/src/vboxhost/do_dkms: No such file or directory
> failed
> (Failed, trying without DKMS)
> Recompiling VirtualBox kernel modules failed
> (Look at /var/log/vbox-install.log to find out what went wrong)
> --------------------
>
>
>
> I looked and the path it was looking for does not even come close to
> existing and bellow is what shows up in the log
>
>
> Code:
> --------------------
> /etc/init.d/vboxdrv: line 337: /usr/share/virtualbox/src/vboxhost/build_in_tmp: No such file or directory
> --------------------
>
>
>
>
> Thanks in advance and extremely willing to learn.
As I see it, the only reason to use the version of VBox from the YaST repo is if
the kernel driver comes with the package. If you need to build it, then get the
RPM from the VirtualBox web site, and use ‘sudo rpm -i <vbox_file_name>’ to
install it. Done.
OK, I donloaded/installed from the Oracle site, then step by step did the rest as explained in the article and this is what I run into.
bill # /etc/init.d/vboxdrv setup
Stopping VirtualBox kernel modules done
Uninstalling old VirtualBox DKMS kernel modules done
Trying to register the VirtualBox kernel modules using DKMSError! echo
Your kernel headers for kernel 3.4.11-2.16-desktop cannot be found at
/lib/modules/3.4.11-2.16-desktop/build or /lib/modules/3.4.11-2.16-desktop/source.
failed
(Failed, trying without DKMS)
Recompiling VirtualBox kernel modules failed
(Look at /var/log/vbox-install.log to find out what went wrong)
And the log:
Uninstalling modules from DKMS
removing old DKMS module vboxhost version 4.2.8
------------------------------
Deleting module version: 4.2.8
completely from the DKMS tree.
------------------------------
Done.
Attempting to install using DKMS
Creating symlink /var/lib/dkms/vboxhost/4.2.8/source ->
/usr/src/vboxhost-4.2.8
DKMS: add completed.
Failed to install using DKMS, attempting to install without
Makefile:184: 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 CONFIG_MODULE_SIG= -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-3.4.28-2.20/Module.symvers
is missing; modules will have no dependencies and modversions.
make -f scripts/Makefile.build obj=/tmp/vbox.0
/tmp/vbox.0/Makefile:184: 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/lib64/gcc/x86_64-suse-linux/4.7/include -I/usr/src/linux-3.4.28-2.20/arch/x86/include -Iarch/x86/include/generated -Iinclude -include /usr/src/linux-3.4.28-2.20/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 -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fno-stack-protector -Wno-unused-but-set-variable -fomit-frame-pointer -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -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_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
In file included from <command-line>:0:0:
/usr/src/linux-3.4.28-2.20/include/linux/kconfig.h:4:32: fatal error: generated/autoconf.h: No such file or directory
compilation terminated.
make[2]: *** [/tmp/vbox.0/linux/SUPDrv-linux.o] Error 1
make[1]: *** [_module_/tmp/vbox.0] Error 2
make: *** [vboxdrv] Error 2
Looks like a problem lots of people have run into, I just haven’t seen an exact fix. Just a lot of reinstall and reboots.
I installed it w/o any issues and it’s running fine.
I compared your log with my log and here is where it starts to be different:
Makefile:181: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR=<directory> and run Make again. Stop.
make KBUILD_VERBOSE=1 SUBDIRS=/tmp/vbox.0 SRCROOT=/tmp/vbox.0 CONFIG_MODULE_SIG= -C /lib/modules/3.4.11-2.16-desktop/build modules
make -C /usr/src/linux-3.4.11-2.16-obj/x86_64/desktop \
KBUILD_SRC=/usr/src/linux-3.4.11-2.16 \
KBUILD_EXTMOD="/tmp/vbox.0" -f /usr/src/linux-3.4.11-2.16/Makefile \
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 /usr/src/linux-3.4.11-2.16/scripts/Makefile.build obj=/tmp/vbox.0
OK, took a small break from beating my head against the wall and got busy with other stuff, but I’m back at the attempt to get this working. I just updated to the newest VB 4.2.10 64-Bit and hoped it would help. Didn’t. Here is the first error that comes up when I run the /etc/init.d/vboxdrv setup at root in the terminal
Stopping VirtualBox kernel modules done
Uninstalling old VirtualBox DKMS kernel modules done
Trying to register the VirtualBox kernel modules using DKMSError! echo
Your kernel headers for kernel 3.4.11-2.16-desktop cannot be found at
/lib/modules/3.4.11-2.16-desktop/build or /lib/modules/3.4.11-2.16-desktop/source.
failed
(Failed, trying without DKMS)
Recompiling VirtualBox kernel modules
Here is the log
Uninstalling modules from DKMS
removing old DKMS module vboxhost version 4.2.10
------------------------------
Deleting module version: 4.2.10
completely from the DKMS tree.
------------------------------
Done.
Attempting to install using DKMS
Creating symlink /var/lib/dkms/vboxhost/4.2.10/source ->
/usr/src/vboxhost-4.2.10
DKMS: add completed.
Failed to install using DKMS, attempting to install without
Makefile:184: 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 CONFIG_MODULE_SIG= -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-3.4.28-2.20/Module.symvers
is missing; modules will have no dependencies and modversions.
make -f scripts/Makefile.build obj=/tmp/vbox.0
/tmp/vbox.0/Makefile:184: 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/lib64/gcc/x86_64-suse-linux/4.7/include -I/usr/src/linux-3.4.28-2.20/arch/x86/include -Iarch/x86/include/generated -Iinclude -include /usr/src/linux-3.4.28-2.20/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 -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fno-stack-protector -Wno-unused-but-set-variable -fomit-frame-pointer -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -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_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
In file included from <command-line>:0:0:
/usr/src/linux-3.4.28-2.20/include/linux/kconfig.h:4:32: fatal error: generated/autoconf.h: No such file or directory
compilation terminated.
make[2]: *** [/tmp/vbox.0/linux/SUPDrv-linux.o] Error 1
make[1]: *** [_module_/tmp/vbox.0] Error 2
make: *** [vboxdrv] Error 2
uname -r output
3.4.11-2.16-desktop
And a find for headers since the complaining of the path not being good.
I notice there is a difference between the listed desktop header VB was looking for with the /etc/… setup command and the listed one shown above. Is that a problem, does DKMS handle that, easy fix?
I’m once again at your folks mercy. Let me know if I’m missing any info you need.
The make-dkms-installed works fine in openSUSE 12.3 and must be executed in the order set by the bash script. Either you use it as posted, or do it properly manually because you know better, which you don’t. The dkms package is not part of openSUSE and is being provided to us by Packman and the problem is being caused by the fact it was written to work with SystemV and has not been modified to work with systemd. My bash script moves the statup bash script dkms_autoinstaller to a new location, creates a systemd service file and enables the service to run automatically. It then works properly with VirtualBox as intended, but does not fix any other problems related to getting VirtualBox to work you may have. VirtualBox 4.2.8 is the version I have loaded and it is working just fine in openSUSE 12.3 using dkms as modified. When I get more time, I will look at the present VirtualBox update, but the new openSUSE 12.3 release is keeping me busy with my other bash script updates.
I would recommend switching to using openSUSE 12.3 to everyone and if your intent was to go that way in the future, some effort can be saved then on getting VirtualBox to work. Since I am not sure why you can’t get VirtualBox to work, upgrading to openSUSE 12.3 may make no difference. On the other hand, doing a by file backup of important files else were and doing a clean install might be just what the doctor ordered for you. In all cases, video seems to be the root of their problems and the older the video system, the more likely it will be left in the dust as the distribution continues on forward. All things being equal, a clean install of openSUSE 12.3 is what I recommend, but it is just my opinion on the subject.
To update fully I normally suggest you start YaST / Software / Software Management (You must enter your password to start YaST).
Then, in Software Management I do a:
Options / Allow Vendor Change (Place an X there)
Package / All Packages / Update if Newer Version Available (Agree if there are several Packages to update)
You will then be presented with your choices to remove the conflict if one exists.
I normally make the following suggestions to all that have such problems:
To avoid package problems, the most important thing to do is to: NEVER ignore a dependency, even if YaST/zypper/updater gives you such an option! In general, never switch to an >inferior< architecture and the solution is most often to just switch Vendor to the >Packman< repository. So changing the vendor is OK, but >ignoring< dependencies is never a very good idea!
In order to allow binary and such to compile to the loaded kernel I suggest that you open YaST / Software / Software Management - Select the View Button on the top left and pick Patterns. Now, you will see several Patterns listed and you want to select:
Development
[X] Base Development
[X] Linux Kernel Development
[X] C/C++ Development
Then Press the Accept button on the bottom right and allow these applications to install.
Updates where the problem. Got through a bunch I let slide for a while and ran the /etc/init.d/vboxdrv setup command again in the terminal and it went all the way through. It was able to fire up into a pen test OS install first thing. Just shut it down before I even started getting into it to come back and say thank you.