Click here to Skip to main content
15,890,043 members
Articles / MinGW

Cygwin vs. MinGW – What to Prefer When

Rate me:
Please Sign up or sign in to vote.
2.33/5 (2 votes)
9 Oct 2012CPOL2 min read 53.9K   3   3
A comparison

Sometimes, we get confused between Cygwin and MinGW when developing open source applications. Of course, they are not the same but which one to prefer when is a big challenge.

Differences

MingGW (MSYS) by itself does not contain a compiler or a C library, therefore does not give the ability to magically port UNIX programs over to Windows nor does it provide any UNIX specific functionality like case-sensitive filenames. Users looking for such functionality should look to Cygwin.

Cygwin applications by principle are not considered a “Native Win32 application” because it relies on the Cygwin® POSIX Emulation DLL or cygwin1.dll for Posix functions and does not use win32 functions directly. MinGW on the other hand, provides functions supplied by the Win32 API. While porting applications under MinGW, functions not native to Win32 such as fork(), mmap(), or ioctl() will need to be reimplemented into Win32 equivalents for the application to function properly.

Preference

In MinGW, the MSYS is a collection of GNU utilities such as bash, make, gawk and grep to allow building of applications. It is a command prompt where users run “./configure” then “make” to build programs. The problem is there’s no /usr directory psychically. The root (/) is considered as usr (/usr) path – so you cannot create one either. The problem arises while a program depends on third party library – there is no place to put this third party library so that the default search path can find the library file. Usually in linux /usr/local/lib is the default library search path. So the client program cannot configure with ”./configure”. You will need special modification on LIBRARY_PATH environment variable which is very tedious and cumbersome.

So to run the program which needs lots of dependency on other libraries, I would prefer Cigwin over minGW.

References

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer
Sweden Sweden
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
GeneralMy vote of 1 Pin
Selvin11-Oct-12 2:24
Selvin11-Oct-12 2:24 
GeneralRe: My vote of 1 Pin
RizviHasan11-Oct-12 3:46
RizviHasan11-Oct-12 3:46 
GeneralRe: My vote of 1 Pin
Selvin11-Oct-12 4:43
Selvin11-Oct-12 4:43 
thnx for the link ... now i'm sure that it is not article but copy-pasted text from few sites ...
how can we describe if only 17% of this article is yours, i forgot this word something on p next is l ....
...works fascinates me...i can stare it for hours...

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.