Re: [gtkmm] Win32 development installation instructions



> 
> It seems to me that there are at least 4 different possible
> configurations that people might mean when they loosely refer to
> "cygwin" under Windows.
>

I agree. And the lack of recommendations from developers makes it even harder for developers wanting to port their applications to win32. I still havn't found a guide on how to setup everything (including gettext, libxml and more) so that it works out of the box. You always have to do some tweaking...

Maybe just using msys+mingw is a simple solution but then you don't get cvs and ssh (at least not last time i tried). Of course there are other windows cvs and ssh clients but when you're used to the unix command line it's nice to have them there (like you have in cygwin).

/Daniel
 
> 1.  The cygwin development environment which resembles a unix 
> environment in which you compile code containing POSIX calls and which 
> produces executables depending on cywin.dll for POSIX emulation.
> 
> 2.  The cygwin environment as above with MinGW headers and libraries 
> installed in the cygwin environment.  Then using the gcc switch 
> mno-cygwin you compile code containing Win32 (but not POSIX) calls 
> and generate binaries that do not depend on cygwin.dll.
> 
> 3.  The cygwin environment as above with the MinGW distribution 
> separately installed.  Instead of using cygwin's gcc,  you put the 
> MinGW distribution's bin directory on your path ahead of cygwin's.  Then
> you use MinGW's compiler (with no mon-cygwin switch of course).  The 
> cygwin environment is now only a convenient set of unix command line 
> tools.
> 
> 4.  Cygwin is not installed.  MinGW is installed along with the MSys 
> command line tools.  This is like 3.,  except that the lighter weight 
> MSys tools are used instead of the Cygwin environment.
> 
> 
> I have found that people often fail to distinguish these 4 possibilities
> and often use misleading terminology.  For instance,  people sometimes
> refer to 2.,  3.,  or 4.  as producing "native" executables.  The reason
> for this terminology is that the source code only uses native Windows 
> calls and not POSIX calls.  Of course,  in either case what's generated
> is a native executable.
> 
> The situation is particularly confusing because neither the Cygwin nor 
> the MinGW web sites have clear information about this.  The MinGW web 
> site recommends that Cygwin users use set up 3.,  and  only indirectly 
> refers to setup 2. as less desirable.  I don't agree with this advice.  
> In my experience,  setup 3. is the most confusing and problematic.  
> (However,  both 1. and 4. are relatively straight forward.)
> 
> I favor 2. for the following reasons:
> A.  With it you can compile either code with POSIX calls (depending on 
> cygwin.dll) or code with Win32 calls (not depending on cygwin.dll).
> B.  Cygwin has its own emulated file system which can conflict with 
> the native way that the MinGW tools deal with files.  The presence of 
> MSYS,  a second bash environment forked from the Cygwin base,  further
> confuses the issue.
> C.  You can use conditionals to create a makefile that works under both 
> Linux and Windows to generate Windows executables from either platform 
> (using cross compilation under Linux).
> 
> 
> _______________________________________________
> gtkmm-list mailing list
> gtkmm-list gnome org
> http://mail.gnome.org/mailman/listinfo/gtkmm-list
> 



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