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]

Re: [PATCH 1/5] Force gmp to use build tool.


Hi,

On Wed, Apr 7, 2010 at 5:08 PM, Yann E. MORIN
<yann.morin.1998@anciens.enib.fr> wrote:
> Arnaud, All,
>
> On Wednesday 07 April 2010 18:35:20 Arnaud Lacombe wrote:
>> Without this, gmp will do the build calling the bare gcc(1) and g++(1),
>> bypassing the value passed with the --build configure option.
> [--SNIP--]
>> - ? ?CFLAGS="${CT_CFLAGS_FOR_HOST} -fexceptions" ? ? \
>> + ? ?CC=${CT_BUILD}-gcc CXX=${CT_BUILD}-g++ CFLAGS="${CT_CFLAGS_FOR_HOST} -fexceptions" ? ? \
>
> Well, in fact, we want to use the host compiler, not the build one.
> GMP will run on the host machine, not the build machine.
>
In that case, I want the build compiler to build `gmp', not the host
one (well, I want my build compiler, ie the one specified by
${CT_BUILD_PREFIX},  to be considered as the host one). Using the true
host compiler would pollute the final library with symbol I don't
want:

After the `gmp' state:
Using the host compiler, library is polluted with host libc symbol:
% cd /home/bla/x-tools/i486-pc-linux-uclibc/lib
% nm *.so* | grep -c 'GLI.*2.4'
6         U __stack_chk_fail@@GLIBC_2.4

Using the build compiler, no symbol pollution:
% nm *.so* | grep 'GLI.*2.4'
%

With this result, the first toolchain will fails to run, whereas the
latter will succeed.

This should be transparent to the lambda user as by default build tool
are the host tool. And building the toolchain with specific build tool
has to be compatible with the building architecture anyway

 - Arnaud

--
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]