insmod: Unknown symbol in module
Tom Kirkpatrick
tom at kirkdesigns.co.uk
Mon Jul 3 08:54:11 UTC 2006
hi,
I'm trying to include the driver for my sound card as a kernel
module, but insmod does not seem to working properly. This is what I
have/have done.
Buildroot svn (r15578)
Busybox 1.2.0
GCC 3.4.6
uClibc r12142
1.6.11 Kernel headers
1.6.17 Kernel
ALSA compiled into the kernel,
my sound card driver compiled as a module.
I built the kernel:
make ARCH=i386 ARCH_PREFIX=i686-linux-
make ARCH=i386 ARCH_PREFIX=i686-linux- INSTALL_MOD_PATH=build/
buildroot/build_i686/root modules_install
then I ran the depmod perl script that came with busybox 1.2.0:
perl scripts/depmod.pl -b build/buildroot/build_i686/root/lib/modules/
2.6.17/ -k build/buildroot/build_i686/root/boot/System.map -k build/
buildroot/build_i686/root/boot/vmlinux > modules/lib/linux-2.6.17/
modules.dep
However, when running the depmod.pl script, I get lots of warnings
about unresolved symbols:
nm: build/buildroot/build_i686/root/boot/vmlinux: no symbols
unresolved symbol printk in file /lib/modules/2.6.17/kernel/sound/pci/
ac97/snd-ac97-codec.ko
unresolved symbol __const_udelay in file /lib/modules/2.6.17/kernel/
sound/pci/ac97/snd-ac97-codec.ko
unresolved symbol device_register in file /lib/modules/2.6.17/kernel/
sound/pci/ac97/snd-ac97-codec.ko
....... loads more unresolved symbol warnings ......
/lib/modules/2.6.17/kernel/sound/pci/snd-via82xx.ko: /lib/modules/
2.6.17/kernel/sound/pci/ac97/snd-ac97-codec.ko /lib/modules/2.6.17/
kernel/sound/drivers/mpu401/snd-mpu401-uart.ko
/lib/modules/2.6.17/kernel/sound/pci/ac97/snd-ac97-codec.ko: /lib/
modules/2.6.17/kernel/sound/pci/ac97/snd-ac97-bus.ko
/lib/modules/2.6.17/kernel/sound/drivers/mpu401/snd-mpu401-uart.ko: /
lib/modules/2.6.17/kernel/sound/core/snd-rawmidi.ko
/lib/modules/2.6.17/kernel/sound/pci/ac97/snd-ac97-bus.ko:
/lib/modules/2.6.17/kernel/sound/core/snd-rawmidi.ko:
Then I copy the kernel image and lib/modules folder into build_i686/
root and re-run make in the buildroot directory.
Now when I boot from the new system and run insmod, I get:
insmod: cannot insert `/lib/modules/2.6.17/kernel/sound/pci/snd-
via82xx.ko': Unknown symbol in module (-1): No such file or directory
Does anyone know if this a problem with insmod, busybox or the
busybox depmod.pl script (found in busybox-1.2.0/examples), or am I
just doing something wrong?
thanks
tom
More information about the uClibc
mailing list