This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: MinGW (Was: Re: PROPOSAL: Variation on an Alternate policy for obsoleting targets)


On 19 May 2003 at 17:32, Stephan T. Lavavej wrote:

> I'm trying to learn. I've managed to successfully build 3.3 on GNU/Linux,
> but haven't been able to build any version of gcc on MSYS/MinGW (whether
> MinGW-patched or not).

I build a GCC cross for the AVR using MinGW / MSYS with a patch from tarballs 
(no bootstrap). There are some caveats including a bug in the current MSYS that 
affects GCC which is still not fixed yet:

<http://sourceforge.net/tracker/index.php?func=detail&aid=671479&group_id=2435&a
tid=102435>

And unfortunately the patch I use is not a very good one. This biggest issue 
seems to be finding Windows replacements for fork / exec / kill. With Cygwin, 
its run-time environment handles these calls, but the down side is that GCC is 
then linked into the Cygwin DLLs. This is not very useful when distributing a 
binary installation; I'd rather not have to ship an almost 1M DLL just to cover 
3 functions.

> > Don't forget about Cygwin and DJGPP, which also produce programs that
> > run under Windows.  Not that I'm putting down MinGW, of course ;-)
> 
<snip> 
> And Cygwin, well, those applications require the Cygwin DLL to be installed on
> the end user's computer (correct me if I'm wrong).  It's always seemed to me to
> be a good solution if you want to simulate GNU/Linux on a Windows machine, but a
> bad solution if you want to create executables that you can distribute to
> others.

When building other software packages in Cygwin, there is always the switch 
-mno-cygwin available to disable linking to Cygwin DLLs. *But*, you'll need to 
make sure that the package is not making any Unix-specific calls for it to 
work, which unfortunately, GCC has those fork / exec / kill calls.

Eric


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]