guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: problem with building gcc-cross-4.8.3 for i686-pc-gnu


From: Ludovic Courtès
Subject: Re: problem with building gcc-cross-4.8.3 for i686-pc-gnu
Date: Thu, 05 Feb 2015 13:44:03 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux)

Marek Benc <address@hidden> skribis:

> On 01/31/2015 11:13 PM, Marek Benc wrote:
>
>>
>> The current issue is that, when building cross-gcc, when it reaches
>> libgomp, configure fails when trying to create a dummy binary. For some
>> reason, the compiled cross-compiler needs --rpath to specify where
>> shared libraries are, as without it, it can't find libmachuser.so and
>> libhurduser.so, which causes it to fail.
>>
>
> Well, I figured out a way to solve it, however, I don't know if the
> change is acceptable, since it alters how cross-compilers work.
>
> In the attached patch, which builds upon the one from my previous
> email, I made cross compilers not use binutils' ld directly, but
> instead use the ld-wrapper script.
>
> This means that while the Hurd cross compiler now works, binaries made
> by cross compilers have their library paths hard-coded into their
> RPATH section, which means that they're less flexible, which might be
> a problem. For some reason, the hurd cross-linker can't find libraries
> without specifying a --rpath, which is strange imho.

Using RUNPATH is not a problem: it’s what we always do.  ;-)

That said, in practice we haven’t done anything special about it in
cross-compilation contexts and things have worked fine.  I believe this
is due to the fact that we’ve only built things that use Libtool, and
Libtool adds --rpath automatically.

Another thing I don’t understand is that we use "--disable-libgomp" in
‘cross-gcc-arguments’, which means that the first cross-gcc (sans libc)
does not build libgomp.  What are things going wrong here?

Thanks,
Ludo’.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]