Open Watcom is a project of the open source community to maintain and enhance the Watcom C, C++, and Fortran cross compilers and tools. An Open Source license from Sybase allows free commercial and non-commercial use of
Open Watcom. More about Open Watcom's features. Details about Open Watcom's history. Work in progress includes numerous Unix ports (Linux, FreeBSD, Solaris, OS X), support for new processors (AMD64, ARMv7), support for
new language features and standards, a C++ STL implementation and more.
MinGW, a contraction of "Minimalist GNU for Windows", is a minimalist development environment for native Microsoft Windows applications.
MinGW provides a complete Open Source programming tool set which is suitable for the development of native MS-Windows applications, and which do not depend on any 3rd-party C-Runtime DLLs. (It does depend on a number of
DLLs provided by Microsoft themselves, as components of the operating system; most notable among these is MSVCRT.DLL, the Microsoft C runtime library. Additionally, threaded applications must ship with a freely distributable thread
support DLL, provided as part of MinGW itself).
MinGW compilers provide access to the functionality of the Microsoft C runtime and some language-specific runtimes. MinGW, being Minimalist, does not, and never will, attempt to provide a POSIX runtime environment for POSIX
application deployment on MS-Windows. If you want POSIX application deployment on this platform, please consider Cygwin instead.
Digital Mars C/C++ Compiler
Digital Mars C/C++ is a drop-in replacement for the Symantec C++ compiler, with support for compiling programs for Win32, Windows 3.1, MSDOS, and 32-bit extended MSDOS. If the target machine does not have a floating point processor
(pre-Pentium machines), you can link the floating point emulation into your program. The compiler supports the C++ definition found in The Annotated C++ Reference Manual (ARM) and the enhanced language features of AT&T version
3.0, including templates, nested classes, nested types, exception handling, and runtime type identification.
Portable Object Compiler
This is a set of Objective C class libraries and a compiler that translates your Objective C code to plain C code. It works on Windows, Linux, OS/2, Macintosh, etc.
GNU C/C++ Compiler and EGCS
This is the GNU C compiler page, from which you can get links to binaries and source code for the GNU C Compiler. Note that the EGCS compiler is now the
new GNU C compiler, and the sources for both compilers will eventually be merged. You can also use our links on this page for the most commonly requested binary versions (MSDOS and Win32).
Ch Embeddable C/C++ Interpreter (Standard Edition)
Ch is a C/C++ interpreter that supports the ISO 1990 C Standard (C90), major features in C99 (complex numbers, variable length arrays or VLAs, type generic functions, long long data type, etc), classes in C++, and extensions
to the C language like nested functions, string type, etc. It can be embedded in other applications and hardware and used as a scripting language. Your C/C++ code is interpreted directly with no compilation to intermediate code.
Since it supports Linux, Windows, MacOS X, Solaris and HP-UX, it means that your code should be portable to any of those platforms once you write it for this compiler. The standard edition is free for personal, academic and
commercial use. You need to register to download the package.
The BDS C Compiler
Remember the old (famous) BDS C compiler for 8080/Z80 CP/M systems? It is now in the public domain, complete with assembly language source code. The package is the retail version of the compiler, with a linker and user manual.
Before you scoff at this, remember that it can be used to generate 8080/8085/Z80 code for embedded systems with a little bit of work (ie, write your own routines to replace any runtime library code that access the operating system functions).
ANYC C Compiler
AnyC is a retargetable C compiler released under the GNU GPL. It is intended for use with 8 bit microprocessors, particularly 8 bit RISC microcontrollers. The original target is the Microchip PIC 16C5X family of 8 bit RISC microcontrollers.
CINT C and C++ Interpreter
This is a C/C++ interpreter that comes with source code. It can be compiled and used on a large variety of Unices, including HP-UX, Solaris, SunOS, AIX, Alpha/OSF, FreeBSD and Linux, as well as Windows NT. You can even issue system
calls from the interpreter (such as Posix calls on Unix or Windows API calls from Windows). It accepts most of K&R and ANSI C and is close to the standard C++ (at the time of this writing). As with all interpreters, it may be useful in debugging programs or learning the language.
SDCC C Cross-compiler
This is a C cross-compiler that targets the Intel 8051 based MCUs. It can also be retargetted for other 8 bit MCUs or PICs. It comes with a source level debugger and a simulator, and it is capable of a variety of optimisations. Source code for the compiler is available under GPL.
Cygwin Project (C & C++ Compilers)
This project includes a commercial quality compiler (GNU C/C++) that generates Win32 GUI and console applications. Source code for the compiler, libraries and tools are provided. Note that the default option in this package forces you to
distribute your source code if you compile and link with their libraries. There is also a special option that you can invoke which will cause it to link with alternative libraries, allowing you to distribute your applications without sources.
LCC-Win32 C Compiler
This is a C compiler that generates Win32 GUI and console applications. It comes with its own linker, IDE, debugger, resource editor and resource compiler.
* * *
Free BASIC Compilers and Interpreters
Free Pascal and Delphi Compilers
Free Fortran Compilers and IDEs
Compilers & Interpreters
Components & Libraries
Databases & Networks
IDEs & Coding Utilities
Management & Distribution
Tools & Editors