Archive - Free compilers list

This page has been kept for archival purposes, it contains lists of free, open source or public domain compiler resources which were of interest during the early developments of Dev-C++ and Dev-Pascal. Since many of these resources date back from the late 90s and early 2000s, some may be unavailable or had their page moved. Please contact me if you find newly working links for missing resources in this list.

1 - Free compilers

Dev-Pascal : Free IDE and compiler for Pascal (with Free Pascal).

Dev-C++ : Free IDE and compiler for the C and C++ languages. Delphi and C source code available.

SmallC : Small C compiler written by J. E. Hendrix. C source code included.

BCX : Basic to C compiler, generates C source files compatible with Lcc-Win32 and MingW (or Dev-C++) without any modification.  It also comes with a resource translator which can read MS resource code and produce code in C (Win32).

CoPascal : Co-Pascal is an extension of the Pascal-S compiler developed by N. Wirth. Pascal source code included.

P32 : Pascal compiler. Pascal source included.

PowerPascal : Power Pascal is a fully 32-bit, native Pascal compiler for OS/2 2.0 or better. Pascal source included.

Djgpp : Free compiler for c, c++, forth, pascal and more including C sources.

TinyPascal : A small implementation of the Pascal language. Full Delphi sources included.

Free Pascal : 32-bit Pascal compiler for Dos, Linux, OS/2. Pascal source code included. Used in Dev-Pascal.

ScriptBasic : Free embedded and extendable scripting Basic interpreter with full C source code. Tested on Windows NT and on Linux.

LCC-Win32 : a free compiler system for Windows by Jacob Navia.

lcc : lcc is a retargetable compiler for ISO Standard C. It generates code for the ALPHA, SPARC, MIPS R3000, and Intel x86 and its successors.

Yabasic : Small basic interpreter (with source code for Visual C++ 6) for Windows and Linux

Pacific C for DOS : Freeware version for MSDOS of a professional C IDE/compiler shareware

TopLogo++ : This is an IDE/compiler tool for developers and scientists. The package includes full documentation, Compiler IDE, demos, help etc...

JavaTM 2 SDK : JavaTM Software Development Kits and Runtimes

XBasic : interactive program development environment, advanced 32-bit/64-bit BASIC, interactive graphical GuiDesigner, multi-platform portable source code, Windows95 - Windows98 - WindowsNT - Linux - UNIX

XSCompiler : This MSDOS compiler generates 32-bit protected mode programs from a language that is C compatible, but includes classes and multiple inheritance. It comes with the standard C library, graphics, sound, multitasking, compression, animation, GIF, PCX, FLI/FLC, and other libraries. The compiler itself is compiled using this language.

GNAT : GNAT is an Ada95 compiler with the source code available in Ada95.

Rapid-Q : Rapid-Q is a free IDE and BASIC op-code compiler system for Win32, Linux, Unix...  It is very easy to use and to integrate with many other goodies like mySQL, cgi, DirectX, Direct3D, GTK ...

Mingw : A very good Win32 port of the GNU GCC compiler (used in Dev-C++)

Cygwin : Another free and good Win32 port of GCC and GNU Utils

GCC : GCC compiler system. Runs on nearly any system.

Phoenix/Envelop : Rapid Development under Basic.

B++ : B++ is a BASIC compiler built on top of C++ - it converts BASIC code to C++, and then calls C++ compiler to produce EXE (or DLL). Source code is in Free Pascal.

Dev86 / BCC : 8086 C/Assembler development tools (C compiler, assembler, linker). Open Source.

http://www.digitalmars.com : Free C/C++ Compiler for DOS, Win & NT by the author of Zortech C++ .

Virtual Pascal : A tool of choice for 32-bit cross-platform development using the Pascal language. It is compatible with Borland Pascal and Delphi, including the Run-Time Library (RTL), an optimizing compiler, a powerful integrated debugger, and comprehensive online documentation.

PlugSys Xbase compiler : PlugSys has a free edition and a Professional edition on their web site. It is a character based compiler for the Xbase(dbase, clipper) language. There are both DOSWin95/98/NT and Linux version. Same code compiles on either system. Also has a server page tool (free and pay versions). The documentation that comes with the download is great. Free version only requires registration to download.

Context programming language : Simple programming language and compiler for MS-DOS with sources and sample programs on it's own input language by Andrei V. Khokhlov

OpenWatcom : Open Watcom is a joint effort to bring the Sybase Watcom C/C++ and Fortran compiler products to the Open Source community.

Self : A port of a compiler for the Self programming language to Linux. The system was originally developed at Stanford University and Sun, and it forms the technological base of the Java Hotspot compiler. A nice GUI is included.

SmartEiffel : The GNU compiler for the Eiffel language. Requires an ANSI C compiler. Supports AIX, Amiga, BeOS, BSD, Cygwin, MSDOS, FreeBSD, GNU/Hurd, GNU/Linux, HP-UX, IRIX, MacOS, NetBSD, NeXT, OS/2, OSF1, QNX, SCO, Solaris, OpenVMS, Windows 95/98/NT/2K and XENIX.

Inno Pascal : Inno Pascal is a simple Pascal compiler for Win32. It produces compact, native-code x86 executables without requiring any external assemblers or linkers. It was written entirely from scratch; it is not based on any other existing compilers. Full source code is included under the GPL license.

Harbour Project : Harbour is an Open Source Clipper Compatible Compiler. It includes OO extensions, and lots of useful adds. The License is GNU+Harbour Exception, what means that the license does not infects the programs you produce with the compiler.


2 - Compilers construction toolkits

Bison and Flex : Yacc and Lex clones. Creates parsers and scanners for compilers.

TPYacc and TPLex : Port of the Yacc and Lex tools to Turbo Pascal. This tools creates parsers and lexical scanners for compilers.

Coco/R : Coco/R combines the functionality of the well-known UNIX tools lex and yacc, to form an extremely easy to use
compiler generator that generates recursive descent parsers. Available for Oberon, Modula-2, Pascal, Delphi, C and Java

antlr : another tool for language recognition Tool written in Java for generating recognizers in Java or C++.  No money required for use, but download requires online registration for authors tracking purposes. Runs with SUN Java SDK.

Delphi Compiler Generator : Runs on Win32 only, written in Delphi, source code included. Free (as in "free beer", not "free speech") for non commercial use

GENTLE Compiler Construction System : This compiler construction tool purports to provide a uniform framework for language recognition, definition of abstract syntax trees, construction of tree walkers based on pattern recognition, smart traversal, simple unparsing for source to source translation and optimal code selection for microprocessors. Note however that if you use it to create an application, the licensing terms require that your applications be licensed under the GNU GPL.

Jacc : Jacc is a general-purpose parser generator that given a LALR(1) context-free grammar generates the source(s) of a C++ class that implements a parser for the language defined by the grammar


3 - Tutorials and articles

Let's build a compiler : A very good tutorial on writing a simple compiler in 16 articles. By Jack W. Crenshaw.

Parsing techniques : Free book to download in postscript or pdf about parsing techniques.


4 - Links to compilers related sites

The comp.compilers archive : Archive of the comp.compilers newsgroup

Compilers.net : Directory and search machine on compilers and programming languages

The Free Country - Developer City : Free programming resources including compilers