Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Re: error building Mach on 64-bit Gentoo

5 views
Skip to first unread message

Richard Braun

unread,
Jan 3, 2012, 4:39:25 AM1/3/12
to gian pendola, help...@gnu.org
On Sat, Dec 31, 2011 at 06:35:58PM -0800, gian pendola wrote:
> Hello,
> My host system is Gentoo, 64-bit. Already installed a Hurd image using qemu-KVM, and decided to build Mach from scratch on the Gentoo system.
> Followed the instructions in:
> http://www.gnu.org/software/hurd/microkernel/mach/gnumach/building.html
> (not Debian),
> I get the following:
>
> gcc -m32 -nostdlib -nostartfiles -r -static \
>   -o clib-routines.o `sed 's/^/-Wl,-u,/' < gnumach-undef` -x c /dev/null -lc -lgcc
> ld -melf_i386  --defsym _START=0x100000 -T '..'/i386/ldscript  -o gnumach  gnumach.o clib-routines.o
> clib-routines.o: In function `strcpy':
> (.text+0x11ea8): multiple definition of `strcpy'
> gnumach.o:/root/gnumach/build/../kern/strings.c:118: first defined here

It looks like, for some unknown reason, gnumach-undef contains strcpy
and other functions. The symbols normally contained in clib-routines.o
are defined in Makefile.am (clib_routines).

> I'm using glibc 2.12.2, gcc 4.5.3.

Can you try with gcc 4.4 and report any difference ?

--
Richard Braun

Samuel Thibault

unread,
Jan 21, 2012, 7:32:41 PM1/21/12
to gian pendola, bug-...@gnu.org, help...@gnu.org
gian pendola, le Sat 31 Dec 2011 18:35:58 -0800, a écrit :
> clib-routines.o:(.eh_frame+0x3b1e): more undefined references to
> `__gcc_personality_v0' follow
>
> Trying to sort out what's happening, but I just get that it has something to do
> about statically linking and/or compiler directives.

This is due to stealing functions from /usr/lib/libc.a, which does not
necessarily works so happily. I have pushed a fix for Debian, I guess
it would work in your case too.

Samuel

0 new messages