首页 > 非编程专区 > 软件共享 > Free C, C++ Compilers
2008
08-20

Free C, C++ Compilers

原文:http://www.thefreecountry.com/compilers/cpp.shtml

Free C, C++ Compilers and Interpreters for Computers



Free Microsoft Visual C++ 2008 Express

Microsoft Visual C++ 2008 Express is currently available for download, free of charge, from Microsoft’s site. It allows you to create programs for the .NET framework as well as native Win32 programs. It comes with an optimizing C++ compiler, linker, debugger, static libraries (including the Standard C++ Library and STL), and Microsoft SQL Server 2005 Express Edition. You can also get either the MSDN Express Library or the full MSDN Libary if you wish. The MSDN Express Library provides documentation for both the IDE as well as the .NET framework classes. The full MSDN library, designed primarily for the full version of Visual Studio also includes information about the Win32 API. Incidentally, if you wish to create native Win32 programs, you may need to download the Microsoft Windows Platform SDK separately and install it. Like all the current versions of Microsoft software, it requires Windows 2000, XP, 2003, Vista (or their x64 versions). Note that unlike the commercial Visual Studio Professional 2005, it does not have MFC, ATL, a Win32 resource editor, a macro assembler, source code control integration, etc.


Turbo C++ Explorer

Borland’s TurboExplorer C++ Explorer Edition allows you to develop C++ applications for Windows using the Borland Turbo C++ compiler and IDE. The package boasts of integrated compilers, RAD visual designers, rich debugging features, Code Insight, templates, a history manager, a database explorer and connectivity, included Borland InterBase and MSDE, support for DCOM, ActiveX, .NET remoting, many pre-built components, etc. You have to register (free) to get the activation key.


Apple Xcode for Mac OS X

Xcode is Apple’s integrated development environment which includes a syntax-highlighting editor, a build control system, a debugger, the GNU C compiler (gcc), an interface builder, AppleScript Studio, Java development support, WebObjects development tools, etc. You need to be an Apple Developer Connection (ADC) member to get the tools, but it appears that online membership is free.


Open Source Watcom / OpenWatcom C/C++ Compiler

The Watcom C/C++ compiler (now OpenWatcom C/C++ compiler) is now open source and free. This compiler, which generates code for Win32, Windows 3.1 (Win16), OS/2, Netware NLM, MSDOS (16 bit and 32 bit protected mode), etc, was a highly coveted compiler some years back (until Sybase terminated it). The compiler also includes the rather well-known STLport (a C++ Standard Template Library implementation).


Digital Mars C/C++ Compiler (Symantec C++ Replacement)

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.


UPS Debugger (C Interpreter)

This is actually a graphical source level debugger for X Window, but it contains a built in C interpreter which can handle single or multiple source files. You can use it to build a byte-code executable and execute the interpreter on that executable. If you need an interpreter to debug or prototype programs, or to just learn the language, check this out. It supports the following platforms: Solaris, SunOS, Linux, FreeBSD, BSD/OS, and possibly other Unices.


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).


Bloodshed Dev-C++ C++ Compiler

This is a Win32 integrated development environment that includes the egcs C++ compiler and GNU debugger from the Mingw32 environment together with an editor and other facilities to make program development using the Mingw32 gcc compiler easier on a Windows platform. It also includes an installer for your applications.


Free Microsoft .NET Framework Software Development Kit (SDK) / Free Microsoft Visual C++ Compiler

The Microsoft Visual C/C++ command line compiler, along with C#, VB.NET and JScript.NET, is available from Microsoft for download for free. You will also need to download the Microsoft Windows Platform SDK which contains the Windows headers and libraries for the compilers. The command line compiler (at the time this was written/reviewed) does not have an optimizer (or at least, not the optimizer that ships with the Professional version).


Intel C++ Compiler for Linux Non-Commercial Version

The Intel C++ compiler has a non-commercial version for Linux which you may use to develop your programs for non-commercial purposes (read their licence for more information). The optimizing ANSI C/C++ compiler supports all Intel 32 bit processors and the 64 bit Itanium processor.


PCC – Portable C Compiler

PCC is based on the original Portable C Compiler by S C Johnson. The goal of the project is to write a small, fast C compiler that can compile C99 source code. The compiler is a two-pass compiler that runs on OpenBSD and NetBSD.


DeSmet C

DeSmet C will be familiar to those who programmed in C in the 1980s. It is an MSDOS C compiler. It has been released under the GNU GPL, and comes with manuals, an editor, and a third party optimizer.


Sun Studio Compilers and Tools

Sun Studio Compilers and Tools for Linux and Solaris OS on Sparc and x86/x64 platforms includes command line tools as well as a NetBeans-based IDE for developing, compiling and debugging C, C++ and Fortran programs. It also includes performance analysis tools. You have to join the Sun Developer Network (SDN) to get access to the free compilers. As far as I can tell, joining the SDN is free.


Open64 Compiler Tools

Open64 comprises optimizing compilers for C, C++, and Fortran 90/95 for Intel Itanium systems running Linux. The compiler is the successor to the SGI Pro64 compiler suite, now released under the GNU GPL.


Apple’s Macintosh Programmer’s Workshop (C and C++ compilers)

Yep, you’re right. This is Apple’s own Macintosh Programmer’s Workshop. The C/C++ compilers, debuggers, tools, etc, in this workshop are all downloadable from their web site, free! They’re the same those you get from their Developer CD. Full documentation about the compilers as well as documentation about programming for the Macintosh in general can be found online. You get the SC/SCpp (68k), which are ANSI compliant C and C++ compilers that generates 680×0 code; as well as MrC/MrCpp which generates C/C++ code for the PowerPC. You also get two assemblers (one for the 68k and one for the PowerPC), the shell, linkers, a Make tool, resource manipulation and analysis tools, file comparison tools, editor, three debuggers, etc. If you want to be on the cutting edge, you can also download the absolutely latest compilers which are still under testing (but having the latest bug fixes and C++ support). CodeWarrior plugin compilers appear to be available from the site as well. (Note – this tool set is for Mac OS 7.X/8.X/9.X program development.)


Cyclone C

Cyclone C is not strictly an ANSI C compiler but a compiler of a “safe dialect” of C. It enforces type safety, has a variety of checks to protect against buffer overflows, array-bound violations, etc. It currently works on Linux and Windows (the latter via Cygwin), and requires you to have the GNU compiler tools on your system (see elsewhere on this page).


TenDRA C/C++ Compiler

TenDRA is a free C/C++ compiler and source code checker (like lint) that runs on a variety of Unix systems like AIX, HP-UX, Linux, Irix, OSF1, SCO, Solaris, SunOS, Ultrix, and Unixware. You can use it to replace your system C compiler, or use it as a lint-like utility to check your source code for correctness and potential bugs. The compiler comes bundled with sid, an LL(1) parser generator.


Tiny C Compiler – Smallest Linux C Compiler

This small Linux and Windows C compiler generates optimized x86 native binaries. It purportedly compiles, assembles and links several times faster than GCC. The compiler is currently moving towards ISO C99 compliance. It also includes an optional bounds checker. It also handles C script files (just add the shebang line “#!/usr/local/bin/tcc -run” to the first line of your C source code file on Linux to have it executed directly. TCC is distributed under the GNU General Public License.


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.


Mingw32 C & C++ Compilers

This system comes with the GNU C/C++ compiler, which you can use to generate Win32 executables. It has its own <windows.h> which is in the public domain. Applications generated using this system are supposed to be faster than those generated by the Cygwin32 system (see elsewhere on this page), and they are free from the encumberances of the GNU license. Like other systems based on the GNU tools, Mingw32 comes with complete with various programming tools, such as a program maintainence program (ie, make), text processing tools (sed, grep), lexical analyser generator (flex), parser generator (bison), etc. It also comes with a resource compiler, allowing you to compile your Windows resources.


GNU C/C++ Compiler

This is the GNU C compiler page, from which you can get links to binaries and source code for the GNU C Compiler. You can also use our links on this page for the most commonly requested binary versions (MSDOS and Win32).


Pelles C Compiler

This is another Windows-hosted C compiler that is based on LCC (see also LCC-Win32 elsewhere on this page). It contains a C compiler, linker, resource compiler, message compiler, a make utility, etc. It compiles code for both Windows and Pocket PC.


Compaq C Compiler

Linux/Alpha users can now download and use Compaq’s optimising C compiler freely by simply filling a form and agreeing to their license agreement. The compiler may be used to generate any sort of program, commercial or otherwise. The compiler includes a math library and a debugger (ladebug) ported from True64 Unix. It comes with the usual man pages as well as a Language Reference Manual and a Programmer’s Guide.


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.


DJGPP C and C++ Compilers

This is a development system based on the well-known GNU C/C++ compiler. It generates 32 bit MSDOS executables that is Windows 95 long-filename-aware. It is a very complete system with IDEs, graphics libraries, lexical analyser generators (flex), parser generators (bison), text processing utilities (like grep, sed), a program maintainence utility (ie, make), a dos extender, and so on. The compiler, utilities and libraries come with source code.


Cilk ANSI C Based Compiler

Cilk is an ANSI C-based language that can be used for multi-threaded parallel programming. It “is especially effective for exploiting dynamic, highly asynchronous parallelism in data-parallel or message-passing style”. Their website mentions that Cilk has already been used to develop three world-class chess programs, StarTech, Socrates and Cilkchess.


Sphinx C– Compiler

This MSDOS compiler is a sort of hybrid C compiler and assembler that allows you to “create programs with the power and readability of C while retaining the efficiency of assembly language.” It can produce MSDOS executables or .OBJ files which you can use in conjunction with other linkers to generate an executable. The above link leads to the source code and documentation for the compiler. If you want a precompiled binary, you can get it from the Unofficial Sphinx C– Compiler site.


LSI C-86 C Compiler

The website for this compiler is written in Japanese which unfortunately is not displayed correctly in my browser (I don’t have the necessary fonts), so I’m not able to comment for certain about this compiler. It looks like a cross-compiler that allows you to generate ROMable code. An older version (3.30c) of the compiler appears to be free. The free version runs on MSDOS only.


ACC C Compiler

This is an MSDOS compiler that handles a subset of the C language with some extensions (eg the #asm directive for inline assembler). Floating point is not supported. It generates protected mode 32 bit assembler code, which you will have to assemble and link using the supplied A86 assembler and linker. A copy of the DOS extender will also be embedded into your application.


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, DS390, Z80, HC08 and PIC microprocessors. It can also be retargetted for other 8 bit MCUs or PICs. It comes with a retargetable assembler and linker, a source level debugger and a simulator, and it is capable of a variety of optimisations. The libraries are Standard C99 compatible. Source code for the compiler is available under GPL. Host platforms supported include Linux, Windows, Mac OS X, Alpha, Sparc, etc.


LADSoft CC386 C Compiler

This is an ANSI C compiler for MSDOS/DPMI and Win32 that comes with a runtime library, linker, rudimentary debugger, DOS extender (MSDOS version), an IDE (Win32 version) and a make utility. Source code is also available. It compiles most of the C99 constructs when ran in C99 compatibility mode. Note: The author is no longer working on this compiler. The files for the last available version from him is available at the mirror site linked above.


Cygwin Project (C & C++ Compilers)

This “project” includes a commercial quality compiler (GNU C/C++) that generates Win32 GUI and console applications. I have not used this port myself, but based on what I read, it appears that they have their own <windows.h> and so on. 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. It appears that the free version has not been updated for some time now.


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. LCC-Win32 is based on the LCC compiler (see elsewhere on this page).


LCC – A Retargetable Compiler for ANSI C

LCC is a C compiler (source code only) that generates code for the Alpha, Sparc, MIPS R3000 and Intel x86. There is also a book A Retargetable C Compiler written by the authors of the compiler that explains the code of the C compiler. This compiler is the basis of at least 2 other Win32 C compilers (also listed on the Free C/C++ Compilers & Interpreters page).


Pacific C Compiler

This is a MSDOS C compiler that comes with a development environment. You can distribute programs compiled with the compiler freely. Latest news: the site now requires that you register before downloading. To download the program, go to the page linked to above, seach for Pacific C under the “Free Software” section, click the link, and create a new account.


ATTOC C Compiler

A MSDOS based C compiler that generates assembly language files. You can use either MASM or TASM to assemble the generated file. I’m not sure if there are any libraries or headers included (you have to check it out yourself).


Leonardo IDE

Leonardo IDE is a Macintosh-based IDE, compiler and debugger for C programs. It has a syntax highlighting editor, an ANSI C compiler, a compiler for the ALPHA visualization language, a graph editor, a reversible virtual CPU, etc. Note that the programs are not compiled to native code but to code to be executed for the virtual CPU. The virtual machine and debugger allows you to execute code forwards and backwards and supports multitasking. The IDE comes with animated algorithms, plus example source code for games like Tetris, Checkers, etc. The IDE is useful for checking and debugging your source code, search for memory leaks, etc. Note: this project has been discontinued.


Free C, C++ Compilers》有 2 条评论

  1. mei1977mei 说:

    都是英文的!

  2. hiroki 说:

    感谢楼主啊

留下一个回复