Building an open source development environment on Windows

Author: Devin Smith
Last Reviewed: 04/23/2009

  1. Compiler
  2. Source Code Repository
  3. Editor
  4. Extra tools
    1. File Differences
    2. CmdPrompt
    3. MSYS
  5. Installer

1. Compiler

There are several free compiler systems available for Windows.

- MinGW stands for Minimalist GNU for Windows and includes gcc, g++ and GNU make. If you're familiar with gcc under Linux/Unix you would feel very comfortable with using it under Windows.

- lcc-win32 is another great system that includes everything you need to build Windows applications. It comes with both command line tools and an IDE. The command line tools include a make.exe which can understand GNU Makefiles. The only downside to lcc-win32 is that it only provides a C compiler

- Pelles C is yet another command line system that is also based on lcc. If the license for lcc-win32 is not acceptable to you then you can use Pelles C.

2. Source Code Repository

Various SCMs are available on Windows.

- TortoiseSVN does an excellent job of integrating Subversion into Windows.

3. Editor

There are many great editors for Windows.

- Notepad++ is a pretty good free and open source editor.

- TextPad is not open source and also not free, however it's worth mentioning because it's in my opinion an excellent editor for Windows. Before I used vim this was my editor of choice.

- Vim is yet another editor that is popular on many Unix/Linux systems. If you are used to using it on those systems then you might enjoy using it on Windows. This is my current editor of choice.

4. Extra Tools

The following pieces of software are extremely useful for building software on Windows.

4.1 File Differences

- WinMerge is in my opinion the BEST tool for comparing file differences and merging them between multiple files. I also recommend hooking this up to TortoiseSVN for even better productivity.

4.2 CmdPrompt

- Command Prompt Here This adds an item named "Command Prompt Here" to the context menus of folders in Windows Explorer which, when selected, opens a command prompt window (cmd.exe) with the folder as the current directory.

4.3 MSYS

- MSYS stands for Minimal SYStem and basically provides bash, grep, awk, etc. so that standard configure scripts can run and build open source software.

5. Installer

There are a couple of free installers for Windows.

- Inno Setup is a free installer for Windows programs. First introduced in 1997, Inno Setup today rivals and even surpasses many commercial installers in feature set and stability.

- NSIS (Nullsoft Scriptable Install System) is a professional open source system to create Windows installers. It is designed to be as small and flexible as possible and is therefore very suitable for internet distribution.