This patch obviously isn't usable for anyone else, but UML needs a hook or something to add libgcc and libc to the ld commands: Index: linux-2.6-git/scripts/link-vmlinux.sh =================================================================== --- linux-2.6-git.orig/scripts/link-vmlinux.sh 2008-06-11 11:26:07.000000000 -0400 +++ linux-2.6-git/scripts/link-vmlinux.sh 2008-06-11 11:41:04.000000000 -0400 @@ -122,7 +122,7 @@ fi # First stage of fully linked vmlinux tell LD ${VMLINUX} ${LD} ${LDFLAGS} ${LDFLAGS_vmlinux} -o ${VMLINUX} \ - -T ${KBUILD_VMLINUX_LDS} vmlinux.o + -T ${KBUILD_VMLINUX_LDS} vmlinux.o `gcc -print-libgcc-file-name` -lc if [ "${CONFIG_KALLSYMS}" = "y" ]; then @@ -133,7 +133,8 @@ if [ "${CONFIG_KALLSYMS}" = "y" ]; then # link in kalll symbols tell LD vmlinux ${LD} ${LDFLAGS} ${LDFLAGS_vmlinux} -o vmlinux \ - -T ${KBUILD_VMLINUX_LDS} vmlinux.o .tmp_kallsyms.o + -T ${KBUILD_VMLINUX_LDS} vmlinux.o .tmp_kallsyms.o \ + `gcc -print-libgcc-file-name` -lc fi tell SYSMAP System.map This fixes the flood of undefined symbols, but I still get this on the link: ld: warning: Cannot create .note.gnu.build-id section, --build-id ignored. ld: warning: cannot find entry symbol _start; defaulting to 08056320 And when I run the result, I get this, which I don't understand at all: -bash: ./uml/linux: /usr/lib/libc.so.1: bad ELF interpreter: No such file or directory Jeff -- Work email - jdike at linux dot intel dot com -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html