Messages in this thread |  | | From | Keith Owens <> | Subject | Re: compiling 2.4.0-test10 kernel | Date | Sat, 11 Nov 2000 04:23:35 +1100 |
| |
On Fri, 10 Nov 2000 11:23:29 -0500 (EST), "Georg Nikodym" <georgn@somanetworks.com> wrote: > C> i've manged to successfully compile 2.4.0-test10 kernel. however, > C> upon startup there are some failed/error messages: > C> 1. finding module dependencies: depmod *** Unresolved symbols in > C> /lib/modules/2.4.0-test10/kernel/arch/i386/kernel/apm.o > >There are two things you can do about this: > > 1. Disable module versioning. > 2. Copy the System.map file that's made during the kernel build to > /boot/System.map-2.4.0-test10.
System.map has nothing, repeat nothing to do with depmod at startup. Yes, you can run depmod reading from a System.map but that only makes sense before you boot the new kernel. Once you have booted your new kernel, depmod -a reads from kernel memory, not System.map.
>those that know more is what is the correct way to build a module such >that it'll insmod in the face of module versioning. Is this something >for the FAQ?
Current Makefiles sometimes break with module versioning, the design is inherently wrong but rewriting the entire Makefile system just before the release of Linux 2.4 is not an option. This should be in the FAQ, Richard, please add.
Q. Why do I get unresolved symbols like foo__ver_foo in modules?
A. If /proc/ksyms or the output from depmod -ae contains symbols like "foo__ver_foo" then you have been bitten by the broken Makefile code for symbol versioning. The only safe way to recover is save your config, delete everything, restore the config and recompile.
mv .config .. make mrproper mv ../.config . make oldconfig make dep clean bzImage modules install, boot
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
|  |