This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
PATCH: CVS build fails for x86 (SUSE 9.3, gcc 4.2.1) with multiple definition of __memcpy_chk
- From: "H.J. Lu" <hjl at lucon dot org>
- To: "Hillier, Gernot" <gernot dot hillier at siemens dot com>
- Cc: libc-alpha at sourceware dot org
- Date: Tue, 2 Oct 2007 07:36:54 -0700
- Subject: PATCH: CVS build fails for x86 (SUSE 9.3, gcc 4.2.1) with multiple definition of __memcpy_chk
- References: <4702251A.2030808@siemens.com>
On Tue, Oct 02, 2007 at 01:01:46PM +0200, Hillier, Gernot wrote:
> Hi!
>
> Just wanted to let you know, that for me the build of a current CVS
> snapshot of libc fails for x86 while it works for x86_64.
>
> Error messages are:
>
> : /home/hillier_g/build-libc-default/libc_nonshared.a
> gcc -nostdlib -nostartfiles -r -o
> /home/hillier_g/build-libc-default/libc_pic.os \
> -Wl,-d -Wl,--whole-archive
> /home/hillier_g/build-libc-default/libc_pic.a
> /home/hillier_g/build-libc-default/libc_pic.a(memcpy_chk.os): In
> function `__memcpy_chk':
> /home/hillier_g/libc/debug/memcpy_chk.c:32: multiple definition of
> `__memcpy_chk'
> /home/hillier_g/build-libc-default/libc_pic.a(memcpy.os):(.text+0x0):
> first defined here
> /home/hillier_g/build-libc-default/libc_pic.a(mempcpy_chk.os): In
> function `__mempcpy_chk':
> /home/hillier_g/libc/debug/mempcpy_chk.c:33: multiple definition of
> `__mempcpy_chk'
> /home/hillier_g/build-libc-default/libc_pic.a(mempcpy.os):(.text+0x0):
> first defined here
> /home/hillier_g/build-libc-default/libc_pic.a(memset_chk.os): In
> function `__memset_chk':
> /home/hillier_g/libc/debug/memset_chk.c:28: multiple definition of
> `__memset_chk'
> /home/hillier_g/build-libc-default/libc_pic.a(memset.os):(.text+0x0):
> first defined here
> collect2: ld returned 1 exit status
> make[1]: *** [/home/hillier_g/build-libc-default/libc_pic.os] Fehler 1
>
Can you try this?
H.J.
----
2007-09-13 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/i386/i586/memcpy_chk.S: New.
* sysdeps/i386/i586/mempcpy_chk.S: Likewise.
* sysdeps/i386/i586/memset_chk.S: Likewise.
--- sysdeps/i386/i586/memcpy_chk.S.i586 2007-10-02 07:00:06.000000000 -0700
+++ sysdeps/i386/i586/memcpy_chk.S 2007-10-02 06:58:51.000000000 -0700
@@ -0,0 +1 @@
+#include <sysdeps/i386/i686/memcpy_chk.S>
--- sysdeps/i386/i586/mempcpy_chk.S.i586 2007-10-02 07:00:06.000000000 -0700
+++ sysdeps/i386/i586/mempcpy_chk.S 2007-10-02 06:58:51.000000000 -0700
@@ -0,0 +1 @@
+#include <sysdeps/i386/i686/mempcpy_chk.S>
--- sysdeps/i386/i586/memset_chk.S.i586 2007-10-02 07:00:06.000000000 -0700
+++ sysdeps/i386/i586/memset_chk.S 2007-10-02 06:58:51.000000000 -0700
@@ -0,0 +1 @@
+#include <sysdeps/i386/i686/memset_chk.S>