Multiple definition of __libc_multiple_libcs

P. J. McDermott pjm@nac.net
Sun Apr 22 03:19:00 GMT 2012


Hi,

Trying to cross build EGLIBC 2.15 for the ARM Cortex-A8 (ARMv7-A) using
GCC 4.6.2 and Binutils 2.22, I get the following error:

  arm-cortex_a8-linux-gnueabi-gcc   -nostdlib -nostartfiles -r -o <build
  >/elf/librtld.map.o '-Wl,-(' <build>/elf/dl-allobjs.os <build>/libc_pi
  c.a -lgcc '-Wl,-)' -Wl,-Map,<build>/elf/librtld.mapT
  <build>/libc_pic.a(init-first.os):(.data+0x0): multiple definition of
  `__libc_multiple_libcs'
  <build>/elf/dl-allobjs.os:(.bss+0x9c): first defined here
  collect2: ld returned 1 exit status

"<build>" is the path to the directory in which I tried to build EGLIBC.
I can provide a full log if it helps.

A Web search found one relevant thread [1], and I found the mentioned
definitions of __libc_multiple_libcs in EGLIBC 2.15, but I'm not sure
how to proceed.  Can anyone help me understand the cause of this error?
Why is init-first.os being linked in here?

Configuration and build procedure:
http://git.os.pehjota.net/notes/free-embedded-os.git/tree/temporary-bootstrap-builder-setup-cortexa8.txt?id=8b0ef4a9#n275

Toolchain components:
Binutils     2.22
GMP          5.0.2
MPFR         3.1.0
MPC          0.9
GCC          4.6.2
EGLIBC       2.15
Linux-libre  3.2.7

Build system:
Debian GNU/Linux wheezy
Binutils     2.22
GCC          4.6.3
EGLIBC       2.13
Linux        3.2.0

1: http://sourceware.org/ml/libc-hacker/2000-01/msg00069.html

Thanks,
-- 
P. J. McDermott     http://www.pehjota.net/            (_/@\_)    ,--.
mailto:pjm@nac.net  http://identi.ca/pehjota      o    < o o >   / oo \
                                                    o   \ `-/    | <> |.
                                                o o o    "~v    /_\--/_/



More information about the Libc-help mailing list