- http://www.compilers.net/ has a long list of c compilers, some of which also have an IDE.
- http://www.thefreecountry.com/compilers/cpp.shtml, ditto but these are all free to use.
|Axiomatic Multi-Platform C||Comeau||GNU Compiler Collection|
|lcc||TenDRA C/C++||clang: a C language family frontend for LLVM|
|Apple XCode (clang+IDE)||Apple Macintosh Programmer's Workshop||Leonardo IDE (and compiler) (discontinued)|
|UPS Debugger (C interpreter)|
|Intel C++ (and C) for Linux||TinyCC, for Linux/x86|
|Sun Studio 11 Solaris/Linux Suite|
|Microsoft Windows (aka Win32)|
|Digital Mars C/C++ Compiler||Microsoft eMbedded Visual C++||Microsoft Visual C++ 2008 Express|
|Microsoft .NET Framework Developer SDK's||OpenWatcom||Bloodshed Dev-C++ (and C)|
|BSD C, for 8080/Z80 CP/M|
|CCured Memory safe translator||LLVM Low Level Virtual Machine||Open64 Compiler Tools|
Note: lcc and lcc-win32 are different compilers, the latter originally based on the former.
Editors and IDEs
- Anjuta - IDE for Unix
- Code::Blocks - "The open source, cross platform Free C++ IDE"
- GNU Emacs - Full featured editor, with IDE components
- JOE (Joe's Own Editor) - Curses-based editor
- VILE (Vi Like Emacs) - Editor with some IDE features
- VIM (Vi IMproved) - Editor with some IDE features
- Visual Slickedit - Commercial IDE for Unix and Windows
- XEmacs - Full featured editor, with IDE components
- Semi-sorta' C-like Interpreters...
- Google/dmoz C Library directory: http://dir.google.com/Top/Computers/Programming/Languages/C/Libraries/
- diet libc, optimized for small size: http://www.fefe.de/dietlibc/
- GNU C Library, commonly found on Linux systems: http://www.gnu.org/software/libc/libc.html
- Newlib, for embedded systems: http://sources.redhat.com/newlib/
- uClibc, optimized for embedded systems: http://www.uclibc.org/
- libcurl, a multiprotocol file transfer library: http://curl.haxx.se/libcurl/
- GTK+, a library for creating graphical user interfaces, http://www.gtk.org/
- ATK, "interfaces for accessibility"
- GLib, "low-level core library that forms the basis of GTK+"
- Pango, "layout and rendering of text, with an emphasis on internationalization"
- LIBH (written by our own Skapare), a collection of functions for C programming intended to be helpful or handy: http://libh.slashusr.org/
- Portable Coroutine Library http://www.xmailserver.org/libpcl.html
Curses provides terminal independent control of a terminal, especially with respect to display but in newer incarnations a nice degree of independence for input as well.
- ncurses: http://www.gnu.org/software/ncurses/ncurses.html
- pdcurses: http://pdcurses.sourceforge.net/
- T.E.Dickey's curses development kit: http://invisible-island.net/cdk
- Fred Fish's DBUG library, a macro-based debugging library
- The GNU Project Debugger (GDB) -- Several projects derive from this, including Data Display Debugger (DDD), which shows datastructures graphically, and CGDB, which shows the relevant lines in source code as a program is stepped through.
- NoBug Debugging support
- Better String Library (bstring) http://bstring.sf.net/
- GLib has strings http://developer.gnome.org/doc/API/glib/glib-string-utility-functions.html
- OSSP str http://www.ossp.org/pkg/lib/str/
- Vstr (written by our own geppetto), a string library designed to work optimally with readv and writev: http://www.and.org/vstr/
The Vstr site has a review of numerous string libraries, including all the above, at http://www.and.org/vstr/comparison.html
Tools and Utilities
- cscope - source browser, integrates into vim and (x)emacs.
- cproto - generates function prototypes from source containing definitions.
- Exuberant Ctags - generates tag files (for use by editors and such) from source.
- diffstat - reads the output of the diff command and displays a statistics.
- cutils - Collection of utilities for C programmers (cdecl, cundecl, cobfusc, more).
- splint - static code analyzer.
- NCC - NCC is a compiler that produces program analysis information. Also includes a graphical call-graph navigator and source browser.
- Xrefactory - source browser, integrates into editors. Also can generate cross referenced html.
- Highlight - Highlights C (among other languages) source code to many different output types.
- "lemon" Parser-Generator Tutorial A nifty alternative to yacc/bison.
- An Example tarball Decent example set PLUS lemon source.
- Valgrind An award-winning suite of tools for debugging and profiling x86-Linux programs.
Google/dmoz C Source code directory: http://dir.google.com/Top/Computers/Programming/Languages/C/Source_Code/