Missing kernel symbol file for latest update
opensuse v11.2
linux 2.6.31.12-0.1-desktop x86_64
The kernel symbol file is still at 2.6.31.3. Apparently the symbol file did not get updated with the rest of the kernel development files. At least one program does not build because of that.
Any idea where to acquire the missing file(s)?
Re: Missing kernel symbol file for latest update
Should be in the update repo:
Code:
$ zypper info kernel-syms
Loading repository data...
Reading installed packages...
Information for package kernel-syms:
Repository: openSUSE-11.2-Update
Name: kernel-syms
Version: 2.6.31.12-0.1.1
Arch: x86_64
Vendor: openSUSE
Installed: No
Status: not installed
Installed Size: 1.0 KiB
Summary: Kernel Symbol Versions (modversions)
Description:
...
Re: Missing kernel symbol file for latest update
Okay. There must be some other error then. Perhaps the package database is not being updated? The package manager definitely shows an earlier version as current.
If it is installed, why cannot VirtualBox not find it to build its driver?
Code:
Information for package kernel-syms:
Repository: @System
Name: kernel-syms
Version: 2.6.31.12-0.1.1
Arch: x86_64
Vendor: openSUSE
Installed: Yes
Status: up-to-date
Installed Size: 1.0 KiB
Summary: Kernel Symbol Versions (modversions)
Re: Missing kernel symbol file for latest update
The package you want for that is actually kernel-source.
Re: Missing kernel symbol file for latest update
The package manager shows the kernel sources at the same revision as the compiled kernel. It is the kernel symbol file that is missing or mislabeled, or something.
Re: Missing kernel symbol file for latest update
Nope, kernel-source is one of the requisites to compile vboxdrv. Works for me. As you can see, I don't even have kernel-syms installed. You should look in /var/log/vbox-install.log for detailed messages.
Re: Missing kernel symbol file for latest update
Here the head from the log file. The contents are the same as in the past when the kernel sources were missing, then when the syms were missing. Now, I have no clue what is missing.
Code:
Makefile:155: 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 -C /usr/src/linux SUBDIRS=/tmp/vbox.0 SRCROOT=/tmp/vbox.0 modules
test -e include/linux/autoconf.h -a -e include/config/auto.conf || ( \
echo; \
echo " ERROR: Kernel configuration is invalid."; \
echo " include/linux/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/linux/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.31.12-0.1/Module.symvers
is missing; modules will have no dependencies and modversions.
Re: Missing kernel symbol file for latest update
Not sure what happened in your case. Here's what the first few lines should look like:
Code:
** Compiling vboxdrv
make KBUILD_VERBOSE= -C /lib/modules/2.6.31.12-0.1-desktop/build SUBDIRS=/tmp/vbox.0 SRCROOT=/tmp/vbox.0 modules
make -C ../../../linux-2.6.31.12-0.1 O=/usr/src/linux-2.6.31.12-0.1-obj/x86_64/desktop/. modules
I'm using the Sun PUEL version, installed from the Sun repo using instructions elsewhere on this forum in the last few days.
Re: Missing kernel symbol file for latest update
Quote:
Originally Posted by
ken_yap
Not sure what happened in your case. [...]
Me either. It built fine with version v3.1.2, before the kernel upgrade. V3.1.2 does not build, either, now.
Re: Missing kernel symbol file for latest update
I wonder if you have or had the OSE version installed from the openSUSE repos. Some people say that this interferes with the PUEL version. If so you might want to remove the OSE version first.
Re: Missing kernel symbol file for latest update
You should only need the kernel-source. That will include all the header files and that is what is needed. Having symbols installed is only confusing things because it is also the headers. Deinstall symbols.
Don't know why symbols has not updated but you don't need it if you have source.
Re: Missing kernel symbol file for latest update
Quote:
Originally Posted by gogalthorp
You should only need the kernel-source. That will include all the header
files and that is what is needed. Having symbols installed is only
confusing things because it is also the headers. Deinstall symbols.
Don't know why symbols has not updated but you don't need it if you
have source.
Hi
? when doing any work with the openSUSE kernel, you need kernel-source,
linux-kernel-headers, kernel-syms, make and gcc or you could install
the devel_kernel pattern.
--
Cheers Malcolm °¿° (Linux Counter #276890)
SUSE Linux Enterprise Desktop 11 (x86_64) Kernel 2.6.27.42-0.1-default
up 6 days 21:39, 4 users, load average: 0.12, 0.12, 0.16
GPU GeForce 8600 GTS Silent - CUDA Driver Version: 190.53
Solved: Re: Missing kernel symbol file for latest update
Bzzt! Befuddled admin.
I have been working on too many computers at once. The computer where VB would not build did indeed install the latest kernel version, but I had not yet rebooted the computer for it to take effect.
Once it was rebooted, vboxdrv built as expected.