[SDL] Compiling an SDL application in Windows ...

Peter Strempel zotan at web.de
Sat Nov 29 11:52:01 PST 2003

Stephen Anthony wrote:
>>>This is all so confusing.  Development under Linux is so much

MinGW + MSYS offer an environment similar to Linux. Not exactly, but one 
can work with it. I personally prefer to write my Makefiles than 
clicking on some compiler settings checkboxes in some IDE. Matter of 

> No reason.  That's why I asked the question, to see what the 
> possibilities were.  As a matter of fact, I already had MingW32 
> installed under Windows, but I forgot all about it (I don't use Windows 
> that much).

In my eyes MinGW is one of the best choices, especially if you are used 
to working on Linux. Additionally, using the same compiler makes life 
just easier if you develop on Linux and then compile on Windows, 
regardless of the theory that the same code should be compiled by any 
ANSI confirm compiler. That's just the theory. :=)
The drawback of MinGW is, it's quite slow. Slower than gcc on Linux, and 
much slower than Borlands or Microsofts compilers. The created 
executables are large if you have C++ code. But I dont see that as a 
real disadvantage with todays enourmous harddrives. Who cares if it's 3 
or 5 MB?
Cygwin offers in my eyes little advantage except you really need the 
POSIX layer. The compiler is the same, gcc. If you dont need the cygwin 
libs, MinGW works just as well.

Other options might be Borlands free commandline tools or their 
commercial IDE. Borlands compiler is certainly good and recommanded. 
Microsoft Visual C depends if you are willing to invest a good amount of 
cash and love to click lots of checkboxes, though you can also use 
makefiles, but you need to write them from scratch. Visual C is very 
fast and produces small binaries, and the debugger is quite usable. 
Version 7 does not suck as much concerning standards like MSVC 6 does. 
Digital Mars is another high-quality player among the free compilers, 
compiles extremely fast and produces small and fast code, but I never 
got it working with SDL (does not mean it does not work, I did not try 

My personal preferences are MinGW and Borland. But such recommendations 
can quickly evolve into a religious war. :)

Flawlessly together with SDL work MinGW, MSVC and Borlands compiler.

Cross-compiling Windows executables on Linux is an option many people 
use, though I personally prefer to compile Windows binaries on Windows, 
as I simply want to test the stuff right away. Depends on your 
requirements. You can of course do both.


More information about the SDL mailing list