This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
Hi guys,
After digging a little, the problem comes from the
glibc-2.6.1/posix/Makefile. It has been solved starting from glibc 2.7
so I extracted a patch for glibc 2.6.1.
Regards,
Thomas
Le dimanche 11 janvier 2009 Ã 11:51 +0100, Thomas Jourdan a Ãcrit :
> Hi guys
>
> I'm still working on the solaris port an I have the same issue here.
> While trying to build the i686-nptl-linux-gnu toolchain under
> OpenSolaris, the problems appears during the make install rule of the
> libc function.
>
> The problem is that solaris tries to execute ld-linux.so.2, which is an
> elf 32 bits dyn lib, and it fails with a memory fault, not a "cannot
> execute binary file". Hence the build stops on this error.
>
> I'm trying to build an eglibc based toolchain yet but it seems that
> eglibc is fixed on this make install rule.
>
> Regards,
> Thomas
>
> Le lundi 05 janvier 2009 Ã 21:00 +0100, Yann E. MORIN a Ãcrit :
> > Michael,
> > All,
> >
> > On Sunday 04 January 2009 14:06:53 michael wrote:
> > > Building powerpc-405-linux-gnu I noticed one error message (I've elided
> > > the path for clarity):
> > > [ERROR] .../powerpc-405-linux-gnu/build/build-libc/elf/ld.so.1: 1:
> > > Syntax error: "(" unexpected
> >
> > > This is building on Ubuntu; building on RHEL I get the slightly more
> > > illuminating message (but not flagged as an error):
> > > [ALL ] /bin/sh: .../powerpc-405-linux-gnu/build/build-libc/elf/ld.so.1: cannot execute binary file
> >
> > > Ah: now all is clear. *Somebody* is trying to execute the target ld.so.1
> > > -- that's not going to work, now is it?
> >
> > Surely not! :-)
> >
> > > I don't know whether this actually matters, and whether the offending code
> > > is in crosstool-ng itself, or is part of glibc (I guess my money isss with
> > > glibc).
> >
> > I'd say it lives somewhere in the glibc Makefiles. Sigh... :-(
> >
> > > Still, it's a bit bothersome. The built toolchain actually seems
> > > to work just fine -- I think the only side effect here is that
> > > sys-root/usr/libexec/getconf is empty -- but something odd to notice!
> >
> > I don't have PowerPC to test on. Does the toolchain work? What is .../getconf
> > used for? Is it vital?
> >
> > My bet is, unless the toolchain does not work, leave it alone, and go your
> > way. There are better things to work on than fixing glibc weirdness.
> >
> > Regards,
> > Yann E. MORIN.
> >
> >
>
>
> --
> For unsubscribe information see http://sourceware.org/lists.html#faq
>
--- glibc-2.6.1/posix/Makefile 2007-04-04 01:28:20.000000000 +0200 +++ glibc-2.7/posix/Makefile 2007-09-12 01:57:22.000000000 +0200 @@ -98,7 +98,7 @@ endif others := getconf install-bin := getconf -install-others := $(inst_libexecdir)/getconf +install-others-programs := $(inst_libexecdir)/getconf before-compile := testcases.h ptestcases.h @@ -110,7 +110,7 @@ tst-rxspencer-mem tst-rxspencer.mtrace tst-getconf.out \ tst-pcre-mem tst-pcre.mtrace tst-boost-mem tst-boost.mtrace \ bug-ga2.mtrace bug-ga2-mem bug-glob2.mtrace bug-glob2-mem \ - tst-vfork3-mem tst-vfork3.mtrace + tst-vfork3-mem tst-vfork3.mtrace getconf.speclist include ../Rules @@ -291,12 +291,20 @@ $(objpfx)bug-glob2-mem: $(objpfx)bug-glob2.out $(common-objpfx)malloc/mtrace $(objpfx)bug-glob2.mtrace > $@ -$(inst_libexecdir)/getconf: $(objpfx)getconf FORCE +$(inst_libexecdir)/getconf: $(inst_bindir)/getconf \ + $(objpfx)getconf.speclist FORCE $(addprefix $(..)./scripts/mkinstalldirs ,\ $(filter-out $(wildcard $@),$@)) - for spec in `LC_ALL=C GETCONF_DIR=/dev/null \ - $(run-program-prefix) $< \ - _POSIX_V6_WIDTH_RESTRICTED_ENVS`; do \ - $(INSTALL_PROGRAM) $< $@/$$spec.new; \ - mv -f $@/$$spec.new $@/$$spec; \ - done + while read spec; do \ + ln -f $< $@/$$spec.new || $(INSTALL_PROGRAM) $< $@/$$spec.new; \ + mv -f $@/$$spec.new $@/$$spec; \ + done < $(objpfx)getconf.speclist + +$(objpfx)getconf.speclist: $(objpfx)getconf +ifeq (no,$(cross-compiling)) + LC_ALL=C GETCONF_DIR=/dev/null \ + $(run-program-prefix) $< _POSIX_V6_WIDTH_RESTRICTED_ENVS > $@.new +else + > $@.new +endif + mv -f $@.new $@
-- For unsubscribe information see http://sourceware.org/lists.html#faq
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |