As always let me prefix this with thanks and admiration to those who get 
this working!

There are a number of different worlds for building using the 64-bit mingw 
toolchain, and this is to wonder if there is a way to enhance 
compatibility:
  (1) build on Linux as a cross-compilation. works smoothly with
      autoconf tools but not best for debugging. Probably fastest builds.
  (2) hosted on cygwin as a cross compiler. Still works with autoconf etc
      and binaries can be run instantly if you are on win64. Compilation
      notably slower than hosting on linux.
  (3) hosted on windows called x86_64-pc-mingw32-gcc etc. but now as a
      windows not cygwin application. If for use on win64 this can be
      self-compiled and is a great test. But cf (1) and (2) it needs
      windows style path names.
  (4) a compiler fully win64 integrated and merely called "gcc".
      If that is present it means one needs to switch PATH to access a
      32-bit gcc to build binaries to give to 32-bit people, at least
      unless it has "-m32/-m64" bi-arch capability.

I can see that for a mingw project (3) and (4) are maybe the most natural 
target. But for my project I use autoconf and the way it does dependencies 
and I am used to using cygwin as mty world not msys... but then (3) does 
not work well for me both because it dislike /cygpath/c/... and its
-M -MD output is disliked by cygwin-gnu-make where "c:\..." is a mess.

So what do others of you do? I started to write a little wrapper for gcc 
that does in effetct a "cygpath -w" on items on the command line then 
thought about making it convert dependency output the other way. Clearly 
possible but feels messy. I can change my build environment to msys not 
cygwin. I can build my own cygwin-hosted toolchain (not a big problem, but 
if it is seen as a dead-end I should try not to lock myself into it).

What I wondered about was proposing a compiler flag so that regardless of 
the way the compiler had been built and was hosted it could be told which 
style (cygwin vs native windows) file names it should cope with? Would 
that be seen as generally useful and might it get into gcc?

For what it is worth, when building 32-bit apps on Windows I am typically 
in cygwin and using "gcc -mno-cygwin" as my way of using mingw.

Any advice/thoughts welcome!

                  Arthur




-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to