mingw-cross-env-list
[Top][All Lists]
Advanced

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

[Mingw-cross-env-list] Package mingwrt and gcc compatibility


From: René Berber
Subject: [Mingw-cross-env-list] Package mingwrt and gcc compatibility
Date: Mon, 02 Jul 2012 13:52:37 -0500
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.19) Gecko/20081209 Lightning/0.9 Thunderbird/2.0.0.19 Mnenhy/0.7.6.0

Hi,

I had a previous exchange with Mark about the latest commit to mingwrt,
which is a package with headers and already made libraries.  The problem
is that MinGW now uses gcc 4.6.x and ...

René Berber wrote:
This change breaks building for anyone not using gcc >= 4.6

The libraries are not made, just installed, so the incompatibility
between compilers causes the problem.  Gcc 4.6 and above added
stack checking.


mingwrt-3.20-2 is supposed to fix some problem with gcc 4.7.0.

http://sourceforge.net/mailarchive/message.php?msg_id=29480749

Another thread has a discussion about incompatibility between
binaries compiled with gcc 4.7.0 and earlier versions:

http://sourceforge.net/mailarchive/message.php?msg_id=29376223

Feel free to bring this up on the MXE mailing list. I'm not sure what
 can/should be done about this.

The obvious solution is to use the source, not the pre-compiled package, but it is not straightforward (since there are no instructions on the package):

./configure --host=i686-pc-mingw32 --prefix=/opt/mxe/usr
...
make
i686-pc-mingw32-gcc -c -D__CRTDLL__ -U__MSVCRT__ -g -O2 -I./include -I./../include -nostdinc -iwithprefixbefore include -I ./../w32api/include crt1.c -o crt1.o
In file included from ./include/float.h:38:0,
                 from crt1.c:19:
/opt/mxe/usr/lib/gcc/i686-pc-mingw32/4.5.3/include/float.h:241:23: error: no include path in which to search for float.h
crt1.c:21:21: fatal error: windows.h: No such file or directory
compilation terminated.

Looks like the -nostdinc prevents the upgrade (from 3.20 to 3.20-2), or some special procedure needs to be followed.

I haven't looked into the problem, I'm sure it can be fixed, and I plan to make this change (using the source, not the pre-compiled package) permanent in my environment.

So this message is not a question, or call for support, just a "heads up".

Note: In case anyone is wondering why I don't want to use gcc 4.7.x, or 4.6.x, the reason is simple: I've spent too much time debugging problems that where caused by the optimizer in the 4.6 versions.
--
René Berber





reply via email to

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