From: マーズ <ma...@th...> - 2013-12-06 02:15:13
|
Greetings Kevin Scott, have you tried -msse -mmmx -m32 options when you compile with gcc/g++ ? Kevin Scott wrote: > Hello, > > I am using MinGW on two computers; the main (newer) one is XP, > and the other (older) one is W98. With the version of MinGW > that I got in July 2012, it ran (and still fully runs), without > any significant problems, on both systems. But with the more > recent version that I got in Sept. 2013, which includes the > latest gcc (4.8.1-4), I'm having some trouble, both with using > it directly to build my software on the W98 system, as well as > to build my software on the XP system and then copy the > resulting .EXEs to run on the W98 system. > > I think this is a combination of two problems. One is 32- bit vs. > 64-bit time, and the other is that the newer gcc may be emitting > code that doesn't run on the older processor (which is a Pentium > with MMX). > > First, the problem with 64-bit time. I copied the complete MinGW > directory tree (the newer one from Sept. 2013, with gcc 4.8.1-4) > onto the W98 system, and tried doing a compile. It ran MAKE.EXE > and CC1.EXE just fine, but when it got to AS.EXE, it put up a > dialog box: > "Error Starting Program." > "The AS.EXE file is linked to > missing export MSVCRT.DLL:_ctime64" > > Since (at least for now) the assembler won't run on the W98 > system, I tried building on the XP system, and then copying the > resulting .EXE to the W98 system. Doing this on an .EXE built > under XP with the older MinGW (July 2012 with gcc 4.7.2), it > worked fine on the W98 system. But doing this on an .EXE built > under XP with the relatively-current MinGW (with gcc 4.8.1-4), > I run into another 64-bit time problem, getting a dialog box: > "Error Starting Program." > "The ECHOLN_NEW_XP.EXE file is linked > to missing export MSVCRT.DLL:_ftime64" > > I then looked into the use of _USE_32BIT_TIME_T. As I understand > it, you're supposed to #define this before #including any header > having to do with time. So I did that, and on XP, rebuilt my > program. When I copy this version of it to W98 and run it, I get > the following dialog box: > "This program has performed an illegal > operation and will be shut down. > If the problem persists, contact the program vendor." > Under "details", it shows that it executed an invalid instruction. > Bytes at CS:EIP (0167:0040BB70): > 0F 44 C2 8D 53 02 0F 44 DA 00 C0 83 DB 03 29 FB > (registers & stack dump omitted for brevity). > The same (small and simple) program runs without any problem on > the XP system, from both the 32-bit time and default-sized time > builds. > > For the 64-bit time issue, what are the plans of the MinGW > community as to whether the distributed .EXE files should have > dependencies on MSVCRT 64-bit time functions, or when the > transition will occur toward them having such dependencies? > > For the invalid-instruction issue, any ideas? I verified the > checksum of the .EXE file on both systems, and there was no > corruption of it in the copy process. I did a quick Google > search on "gcc pentium illegal operation" and got nothing. > > Kevin > > ------------------------------------------------------------------------------ > Sponsored by Intel(R) XDK > Develop, test and display web and hybrid apps with a single code base. > Download it for free now! > http://pubads.g.doubleclick.net/gampad/clk?id=111408631&iu=/4140/ostg.clktrk > _______________________________________________ > MinGW-users mailing list > MinGW- us...@li... > > This list observes the Etiquette found at > http://www.mingw.org/Mailing_Lists. > We ask that you be polite and do the same. Disregard for the list etiquette > may cause your account to be moderated. > > _______________________________________________ > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users > Also: > mailto:mingw-users- re...@li...?subject=unsubscribe |