Re: [Mingw-w64-public] Help building a win64 native compiler from Linux

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

 



t66667@xxxxxxxxx wrote:
Kai Tietz wrote:
2009/8/22 Ozkan Sezer <sezeroz@xxxxxxxxx>:
  Hello,

I hoped this issue was solved by recent modification to fstat/stat,
but sadly it doesn't seem so. To fix this driver bug (and it is a
driver bug only AFAIK), use for building gcc, g++, gfortan, etc for
CFLAGS=-O0
This solves this issue. The question here is what produces the issue
here. Maybe you could add to gcc's build the option
-Wstrict-aliasing=2 option, too (for -O2 build) and check if there are
any new strict aliasing failures are shown.

Best regards
Kai


>From line 813 libiberty/pex-win32.c
/* Create the child process. */ pid = win32_spawn (executable, (flags & PEX_SEARCH) != 0,
            argv, env, dwCreationFlags, &si, &pi);
 if (pid == (pid_t) -1)
   pid = spawn_script (executable, argv, env, dwCreationFlags,
                       &si, &pi);
 if (pid == (pid_t) -1)
   {
     *err = ENOENT;
     *errmsg = "CreateProcess";
   }


This is where it started to failed apparently ...



There's a use of a function "alloca" in the win32_spawn() but this is just a guess. I also compiled target = host = x86_64-w64-mingw32 compiler with -O0 as you suggested, indeed it worked on Vista 64bit. I also compiled native compiler target = x86_64-w64-mingw32, host = mingw32 and without the -O0 it does not have any trouble in "CreateProcess" running on Vista 64-bit, so this bug is specific to the gcc (w64 64-Bit binary).

Hopefully this may be of some interest when someone does hunt down this bug.

Thanks.
Regards.


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux