From: Ruben Van Boxem
Sent: Tuesday, January 19, 2016 7:24 PM
To: [email protected]
Subject: Re: [Mingw-w64-public] i686-posix-sjlj and gmp
2016-01-19 7:07 GMT+01:00 <[email protected]>:

>> Is this as expected with the i686-posix-sjlj compiler when moving from 
>> 4.x.x to 5.x.x ? (It's not something I was expecting.)

>
> I would say it's a bug in GMP's configure magic. If I remember correctly, 
> it was horrendously bad in detecting compiler target architecture around 
> the 4.x-5.x era.

I haven't struck this trouble with any of the 4.x.x compilers that I use.

> I solved it then by explicitly setting --host and --build, as well as 
> passing in CC and CXX, although I'm not sure these will be necessary for 
> the configure step to get the right results.

Thanks for the tip. I'll see if I can get the same approach to work.

> I can try to take a look tonight if it's still a problem for you.

By all means take a look - though I'm quite happy to continue on using the 
trouble-free 4.x.x compilers for a while.  Mainly I use 4.9.2 (i686 and 
x86_64), but I also use a couple of older ones.
I'd like to eventually switch to 5.3.0, and I was just "testing the water", 
so to speak.
So I guess it's a problem for me ... but it's a problem that doesn't have to 
be solved straight away :-)

Despite it's unexpected configuration, the i686 (5.3.0) shared and static 
builds of gmp-6.1.0 were fine, and all tests passed.
It wasn't until it came to building current mpfr svn repo source against 
those gmp builds that strange things started to happen. All of those 
"strange things" involved  pop-ups complaining about an "0xc000007b" 
exception and, according to google, that error typically signifies a 32-bit 
vs 64-bit mismatch.
To me, this raised the following possibilities:
1) that the 5.3.0 i686-posix-sjlj toolchain was misconfigured;
2) that my gmp-6.1.0 build was misconfigured;
3) that the mpfr configure process was flawed.

At least I now know that with 5.x.x i686 builds, GMP_LIMB_BITS should be 32 
(not 64) and __GMP_CFLAGS should contain "-m32" (not "-m64") - as was the 
default with the 4.x.x i686 toolchains.
(I *expected* that would be the case ... but I wasn't entirely sure.)

> I'm assuming here there was no mixup in compiler packaging and the 5.3.0 
> toolchain does indeed target i686 like it should (I have no reason to 
> doubt this).

I have no reason to doubt this either ... but is there an easy way to verify 
?

Thanks Ruben. (One of the compilers I still use is an x86_64 4.7.x 
cross-compiler that you built.)

Cheers,
Rob



------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to