bug-libsigsegv
[Top][All Lists]
Advanced

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

Re: [bug-libsigsegv] mingw failure


From: Sam Steingold
Subject: Re: [bug-libsigsegv] mingw failure
Date: Tue, 23 Aug 2011 18:19:22 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

> * Eric Blake <address@hidden> [2011-08-23 15:29:35 -0600]:
>
> On 08/23/2011 03:18 PM, Sam Steingold wrote:
>>> * Eric Blake<address@hidden>  [2011-08-23 15:02:52 -0600]:
>>>
>>> On 08/23/2011 02:52 PM, Sam Steingold wrote:
>>>> ../configure --prefix=/cygdrive/c/sds/src/top-mingw/ CC=i686-pc-mingw32-gcc
>>>> ...
>>>> libtool: link: i686-pc-mingw32-gcc -g -O2 -o cygwin1.exe cygwin1.o
>>>
>>> Why is a mingw build trying to compile a cygwin-specific test?  You
>>> didn't call configure correctly to let it know that you intended to do
>>> cross-compilation.  Try this:
>>>
>>> ./configure --prefix=/cygdrive/c/sds/src/top-mingw \
>>>    --host=i686-pc-mingw32 --build-i686-pc-mingw32
>
> Typo: I meant --build=, not --build-.

noticed and fixed (actually, configure complained).

>>> That will automatically tell configure that you are doing cross
>>> compilation, and default to finding CC=i686-poc-mingw32-gcc without you
>>> having to explicitly request $CC.
>>
>> I thought that setting CC would take care of this, i.e., configure
>> should call CC with -dumpmachine and compare that with the output of
>> uname (or whatever)...  Sorry.
>
> Nope.  Doesn't work that way.  -dumpmachine is gcc-specific, but not
> all cross-compilers are gcc, so there is no portable way to tell if an
> arbitrary $CC is a cross-compiler by using options to $CC.  Rather,
> the autoconf way (as documented in the generic INSTALL file in so many
> packages) has _always_ been that to specify cross-compilation, you
> specify the --host argument to ./configure; and to avoid warnings, you
> also specify the --build argument (the --build argument is the one
> that is auto-probed by running config.guess, but for compatibility
> reasons, ./configure emits a warning if you specify --host without
> --build).

so it can infer the compiler name - which does not have to be gcc - from
the host/build arguments (BTW, build argument should not be needed -
that's the host on which configure is running) but not vice versa.
this is weird.

>>> The only way to expect sane results when cross-compiling for mingw from
>>> a cygwin environment is to not lie to configure about the fact that you
>>> are cross-compiling.
>>
>>
>> still I see this:
>>
>> checking whether we are cross compiling... no
>
> Huh?  Oh, maybe you hit my typo.  What was your exact command line?

ac_cs_config="'--prefix=/cygdrive/c/sds/src/top-mingw' '--host=i686-pc-mingw32' 
'--build=i686-pc-mingw32' 'build_alias=i686-pc-mingw32' 
'host_alias=i686-pc-mingw32'"

I see why "cross compiling... no" but I don't see how that could matter.

> When I do:
>
> $ ../configure --host=i686-w64-mingw32 --build=i686-pc-cygwin

I thought that it should be the other way around!
... reading --help ...
ouch....

> libsigsegv: i686-w64-mingw32 | yes | yes | 2.10
confirmed.

okay...

$ ../configure --host=i686-pc-mingw32 --build=i686-pc-cygwin 
--prefix=/cygdrive/c/sds/src/top-mingw
...
libsigsegv: i686-pc-mingw32 | yes | yes | 2.10

YAY!!!

-- 
Sam Steingold (http://sds.podval.org/) on CentOS release 5.6 (Final) X 
11.0.60900031
http://www.PetitionOnline.com/tap12009/ http://openvotingconsortium.org
http://mideasttruth.com http://iris.org.il http://thereligionofpeace.com
One can find Holy Grail or Higgs boson, but not the second sock.



reply via email to

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