On 2020-07-28 10:11 a.m., H.J. Lu wrote:
> On Tue, Jul 28, 2020 at 7:01 AM Simon Marchi <sim...@simark.ca> wrote:
>>
>> On 2020-07-28 9:56 a.m., H.J. Lu wrote:
>>> On Tue, Jul 28, 2020 at 6:51 AM Andreas Schwab <sch...@linux-m68k.org> 
>>> wrote:
>>>>
>>>> On Jul 28 2020, H.J. Lu via Binutils wrote:
>>>>
>>>>> On x86, the native GCC can support -m32 and -m64.  "gcc -m32" or "gcc 
>>>>> -m64"
>>>>>  are not cross compiling.
>>>>
>>>> You cannot link -m64 and -m32 together.
>>>>
>>>>> I didn't set PKG_CONFIG_LIBDIR and I don't want to set it.
>>>>
>>>> Then use the correct pkg-config for your target.  If you think
>>>> pkg-config is broken, then fix _that_.
>>>>
>>>
>>> I did:
>>>
>>> RUNTESTFLAGS="--target_board 'unix{-m32}'" CC="gcc -m32 -fno-lto
>>> -fcf-protection"
>>>  CXX="g++ -fno-lto -m32 -fcf-protection" /exp
>>> ort/gnu/import/git/gitlab/x86-binutils/configure \
>>> --enable-targets=x86_64-linux \
>>> i686-linux \
>>> --enable-plugins --disable-gdb --disable-gdbserver --disable-libdecnumbe
>>> r --disable-readline --disable-sim --with-sysroot=/ --with-system-zlib \
>>> --prefix=/usr/local \
>>> --with-local-prefix=/usr/local
>>> configure: WARNING: you should use --build, --host, --target
>>> checking build system type... i686-pc-linux-gnu
>>> checking host system type... i686-pc-linux-gnu
>>> checking target system type... i686-pc-linux-gnu
>>
>> So... is your build system a 32-bit one?  Why does the above say 
>> i686-pc-linux-gnu
>> and not x86_64-something?
>>
> 
> My system supports both -m32 and -m64.  Depending on CC, configure
> selects i686 or x86-64 target.

Can you clarify how this magic works, is this standard autoconf?  Because I am 
trying this
on Fedora, so pretty much the same setup as you, and I don't see this behavior:

$ /home/simark/src/binutils-gdb/configure CC="gcc -m32" CXX="g++ -m32"
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking target system type... x86_64-pc-linux-gnu
...


And even if it worked, why would it set "build" to i686, it doesn't make sense. 
 The gcc you
compile with, and its environment, is still x86_64, not i686.

So *if* it works, it would be a shortcut for setting --host=i686-something, 
maybe.  So
regardless of how that above works, that doesn't remove the need to configure 
pkg-config
correctly for the host system.

If you don't want to learn about with pkg-config and deal with it, then please 
say "I think
we should not use pkg-config", and ideally give supporting points.  Please 
don't unilaterally
push patches just to paper over your own problems.  You just make it so that 
somebody will
need to untangle more mess later.

Simon

Reply via email to