2002-04-11 22:22:31

by Chin-Tser Huang

[permalink] [raw]
Subject: question about compiling 2.4.9 using ARCH=um

Hi,

I am a kernel newbie and I am trying to compile the 2.4.9 kernel
to user mode. The files I use are linux-2.4.9.tar and uml-patch-2.4.9.bz2.
However, when I executed "make linux ARCH=um", I got the following
error messages:
--
...
nm vmlinux | grep -v '\(compiled\)\|\(\.o$\)\|\( [aUw]
\)\|\(\.\.ng$\)\|\(LASH[RL]DI\)' | sort > System.map
mv vmlinux vmlinux.o
gcc -Wl,-T,/usr/src/uml/linux/arch/um/link.ld -o linux -static \
/usr/src/uml/linux/arch/um/main.o vmlinux.o -L/usr/lib
vmlinux.o: In function `rwsem_wake':
/usr/src/uml/linux/lib/rwsem.c:203: undefined reference to `_etext'
vmlinux.o: In function `linux_main':
/usr/src/uml/linux/arch/um/kernel/um_arch.c:201: undefined reference to
`_etext'
/usr/src/uml/linux/arch/um/kernel/um_arch.c:202: undefined reference to
`_edata'
/usr/src/uml/linux/arch/um/kernel/um_arch.c:202: undefined reference to
`_sdata'
/usr/src/uml/linux/arch/um/kernel/um_arch.c:204: undefined reference to
`__bss_start'
vmlinux.o: In function `unlock_pid':
/usr/src/uml/linux/arch/um/kernel/um_arch.c:326: undefined reference to
`switcheroo'
vmlinux.o: In function `do_exitcalls':
/usr/src/uml/linux/arch/um/kernel/process_kern.c:785: undefined reference
to `__exitcall_end'
/usr/src/uml/linux/arch/um/kernel/process_kern.c:785: undefined reference
to `__exitcall_begin'
/usr/src/uml/linux/arch/um/kernel/process_kern.c:786: undefined reference
to `__exitcall_begin'
vmlinux.o: In function `show_trace':
/usr/src/uml/linux/arch/um/kernel/process_kern.c:827: undefined reference
to `_etext'
vmlinux.o: In function `parse_options':
/usr/src/uml/linux/include/asm/arch/string.h:165: undefined reference to
`__start___ksymtab'
vmlinux.o: In function `process_timeout':
/usr/src/uml/linux/kernel/sched.c:359: undefined reference to
`__start___ex_table'
/usr/src/uml/linux/kernel/sched.c:359: undefined reference to
`__stop___ex_table'
/usr/bin/ld: final link failed: Bad value
collect2: ld returned 1 exit status
make: *** [linux] Error 1
--

Can anybody help me solve the problem and compile it? Thanks
a lot!!

Chin-Tser