LD is trying to link to the wrong (local) memcpy symbol when executing those commands:
[EMAIL PROTECTED]:~$ cat /proc/version Linux version 2.6.12-1-k7 ([EMAIL PROTECTED]) (gcc version 4.0.2 20050821 (prerelease) (Debian 4.0.1-6)) #1 Tue Sep 6 16:28:10 UTC 2005 [EMAIL PROTECTED]:~$ ld --version GNU ld version 2.16.91 20050902 Debian GNU/Linux Copyright 2005 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License. This program has absolutely no warranty. [EMAIL PROTECTED]:~$ mkdir tmp [EMAIL PROTECTED]:~$ cd tmp [EMAIL PROTECTED]:~/tmp$ wget http://www.kernel.org/pub/linux/kernel/v2.6/linux- 2.6.13.2.tar.bz2 [EMAIL PROTECTED]:~/tmp$ wget 'http://marc.theaimsgroup.com/?l=linux- kernel&m=112557274910448&q=p3' -O patch2613-1 [EMAIL PROTECTED]:~/tmp$ wget 'http://marc.theaimsgroup.com/?l=linux- kernel&m=112557274923346&q=p3' -O patch2613-2 # NOTE: the previous patches have been produced with RedHat Fedora Core 3 # and so lack a newline at end of the file, it will apply cleanly on # Fedora core 3 but not on Debian, so just do: [EMAIL PROTECTED]:~/tmp$ echo >> patch2613-1 [EMAIL PROTECTED]:~/tmp$ echo >> patch2613-2 [EMAIL PROTECTED]:~/tmp$ tar xjf linux-2.6.13.2.tar.bz2 [EMAIL PROTECTED]:~/tmp$ cd linux-2.6.13.2 [EMAIL PROTECTED]:~/tmp/linux-2.6.13.2$ patch -p1 < ../patch2613-1 [EMAIL PROTECTED]:~/tmp/linux-2.6.13.2$ patch -p1 < ../patch2613-2 [EMAIL PROTECTED]:~/tmp/linux-2.6.13.2$ make defconfig [EMAIL PROTECTED]:~/tmp/linux-2.6.13.2$ make vmlinux > log ..... arch/i386/kernel/built-in.o: In function `smp_store_cpu_info': : prohibited cross reference from .text to `memcpy' in .realmode make: *** [.tmp_vmlinux1] Error 1 [EMAIL PROTECTED]:~/tmp/linux-2.6.13.2$ readelf -s arch/i386/kernel/built-in.o | grep memcpy 351: 00000000 65 FUNC LOCAL DEFAULT 12 memcpy 1077: 00000000 0 NOTYPE GLOBAL DEFAULT UND memcpy 1720: 00000000 65 FUNC GLOBAL DEFAULT 12 code16_memcpy [EMAIL PROTECTED]:~/tmp/linux-2.6.13.2$ make vmlinux CHK include/linux/version.h make[1]: `arch/i386/kernel/asm-offsets.s' is up to date. CHK include/linux/compile.h CHK usr/initramfs_list GEN .version CHK include/linux/compile.h UPD include/linux/compile.h CC init/version.o LD init/built-in.o LD .tmp_vmlinux1 arch/i386/kernel/built-in.o: In function `smp_store_cpu_info': : prohibited cross reference from .text to `memcpy' in .realmode make: *** [.tmp_vmlinux1] Error 1 # NOTE: line extracted from a verbose build: " make vmlinux V=1 " # and add manually the -y memcpy [EMAIL PROTECTED]:~/tmp/linux-2.6.13.2$ ld -m elf_i386 -m elf_i386 \ -o .tmp_vmlinux1 -T arch/i386/kernel/vmlinux.lds \ arch/i386/kernel/head.o arch/i386/kernel/init_task.o \ init/built-in.o --start-group usr/built-in.o \ arch/i386/kernel/built-in.o arch/i386/mm/built-in.o \ arch/i386/mach-default/built-in.o arch/i386/crypto/built-in.o \ kernel/built-in.o mm/built-in.o fs/built-in.o ipc/built-in.o \ security/built-in.o crypto/built-in.o lib/lib.a \ arch/i386/lib/lib.a lib/built-in.o arch/i386/lib/built-in.o \ drivers/built-in.o sound/built-in.o arch/i386/pci/built-in.o \ arch/i386/oprofile/built-in.o arch/i386/power/built-in.o \ net/built-in.o --end-group -y memcpy arch/i386/kernel/built-in.o: reference to memcpy kernel/built-in.o: reference to memcpy mm/built-in.o: reference to memcpy fs/built-in.o: reference to memcpy arch/i386/lib/lib.a(memcpy.o): definition of memcpy drivers/built-in.o: reference to memcpy sound/built-in.o: reference to memcpy net/built-in.o: reference to memcpy arch/i386/kernel/built-in.o: In function `smp_store_cpu_info': : prohibited cross reference from .text to `memcpy' in .realmode Thanks, Etienne. -- Summary: prohibited cross reference to a local symbol. Product: binutils Version: 2.16 Status: NEW Severity: normal Priority: P2 Component: ld AssignedTo: unassigned at sources dot redhat dot com ReportedBy: etienne dot lorrain at masroudeau dot com CC: bug-binutils at gnu dot org GCC build triplet: i486-linux-gnu GCC host triplet: i486-linux-gnu GCC target triplet: i486-linux-gnu http://sourceware.org/bugzilla/show_bug.cgi?id=1396 ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils