Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 10 Sep 2010 11:37:36 +0200
From:      Kai Wang <kaiwang27@gmail.com>
To:        Steve Kargl <sgk@troutmask.apl.washington.edu>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r212373 - head/lib/libelf
Message-ID:  <20100910093736.GA2594@viskning>
In-Reply-To: <20100910025402.GA98740@troutmask.apl.washington.edu>
References:  <201009091851.o89IpoFR019035@svn.freebsd.org> <20100910025402.GA98740@troutmask.apl.washington.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Sep 09, 2010 at 07:54:02PM -0700, Steve Kargl wrote:
> On Thu, Sep 09, 2010 at 06:51:50PM +0000, Kai Wang wrote:
> > Author: kaiw
> > Date: Thu Sep  9 18:51:50 2010
> > New Revision: 212373
> > URL: http://svn.freebsd.org/changeset/base/212373
> > 
> > Log:
> >   libelf is overly strict about the type and alignment of Elf_Data
> >   objects inside one ELF section, which prevents the creation of a ELF
> >   section with mixed data types. For example, gcc LTO use libelf to
> >   create a .gnu_lto_XXX section that contains integers and a string
> >   table, which doesn't work with our libelf implementation.
> >   
> >   The changes made in this commit include:
> >   * Allow Elf_Data type to be different than section type.
> >   * Relax Elf_Data alignment check.
> >   * Align each Elf_Data by their own alignment instead of section alignment.
> >   
> >   MFC after:   1 month
> > 
> > Modified:
> >   head/lib/libelf/elf_update.c
> > 
> 
> libelf still doesn't work with GCC.  All testsuite failures
> are of the form
> 
> collect2: lto-wrapper returned 1 exit status
> compiler exited with status 1
> output is:
> lto1: error: could not open ELF file: Request error: invalid ELF_C_* argument
> lto-wrapper: /usr/home/sgk/gcc/obj4x/gcc/testsuite/gfortran/../../gfortran returned 1 exit status
> collect2: lto-wrapper returned 1 exit status

Hi Steve,

It seems that your lto1 was compiled with our libelf header but linked
to GNU libelf.  (I think "invalid ELF_C_* argument" is GNU libelf error
message)

Could you please check the value of "ldd /path/to/lto1" ?

Thanks,
Kai



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100910093736.GA2594>