Summary
Code::Blocks is a free C++ IDE built specifically to meet the most demanding needs of its users. It was designed, right from the start, to be extensible and configurable.
Advertisement
Code::Blocks (here) is an open-source, cross-platform IDE written using wxWidgets. Using a plugin architecture, its capabilities and features are defined by the provided plugins. Currently, Code::Blocks (http://www.codeblocks.org) is oriented towards C/C++. At the time of this writing, the following compilers are supported:
* GNU GCC (http://gcc.gnu.org/) (Linux)
* MinGW GCC (http://www.mingw.org) (Win32)
* Microsoft's Visual C++ Free Toolkit 2003 (http://msdn.microsoft.com/visualc/vctoolkit2003) (Win32)
* Borland's C++ Compiler 5.5 (http://www.borland.com/products/downloads/download_cbuilder.html#) (Win32)
* DigitalMars (http://www.digitalmars.com/) (Win32)
* OpenWatcom (http://store.scitechsoft.com/product_info.php?products_id=37/) (Win32)
* Small Device C Compiler (SDCC) (http://sdcc.sourceforge.net/)
* Intel C++ compiler (http://www.intel.com/cd/software/products/asmo-na/eng/compilers/219754.htm) (WARNING: requires manual configuration)
Features:
* Open Source! GPL2, no hidden costs.
* Cross-platform. Runs on Linux or Windows (uses wxWidgets).
* Made in GNU C++. No interpreted languages or proprietary libs needed.
* Comes in two presentations: Standalone, and MinGW bundle
* Devpack support (optional)
* Extensible thru plugins (SDK available in the downloads section)
Compiler-related features:
* Multiple compiler support:
o GCC (MingW / Linux GCC)
o MSVC++
o Digital Mars
o Borland C++ 5.5
o Open Watcom
* Compiles directly or with makefiles
* Predefined project templates
* Custom template support
* Uses XML format for project files.
* Multi-target projects
* Workspaces support
* Imports MSVC projects and workspaces
(NOTE: assembly code and inter-project dependencies not supported yet)
* Imports Dev-C++ projects
* Integrates with GDB for debugging
Interface Features:
* Syntax highlighting, customizable and extensible
* Code folding for C++ and XML files.
* Tabbed interface
* Code completion plugin
* Class Browser
* Smart indent
* One-key swap between .h and .c/.cpp files
* Open files list for quick switching between files (optional)
* External customizable "Tools"
* To-do list management with different users
And more! (See the forums for plugins currently being worked on)
Improvements from RC1-1 to RC2:
* Precompiled headers (PCH) support! (currently works only with GCC)
* The source is now fully UNICODE-compatible!
* The source is also fully 64-bit compatible!
* Autoconf/automake build system is now used for non-windows platforms.
* New plugins:
o Code statistics: counts nr. of source lines, nr. of comment lines, etc.
o CBProfiler: parses and displays the output of GProf, the GNU Profiler.
o SourceExporter: exports the active file to HTML/RTF/ODT.
* New lexer (syntax highlighting) files:
o Fortran77 (by Martin Halle)
o NVidia CG (by anonymous)
o X-Base languages (Clipper, Foxpro)
* New and improved project templates:
o SDCC program
o Irrlicht 3D Graphics Engine
o Ogre 3D Graphics Engine
o GLFW project (OpenGL FrameWork)
o wxWidgets: selection between static/dynamic unicode/ansi wxWidgets version.
* New editor functionality (by right-clicking the editor):
o "Find declaration of [keyword]"
o "Open #include file: [file]"
* New plugin type: cbProjectWizardPlugin to allow creation of custom new-project wizards.
* New compiler supported: SDCC (Small Device C Compiler - http://sdcc.sourceforge.net/) for micro-processors. Contributed by Stanimir Jordanov.
* Better handling of modified files outside the IDE: r/w->r/o, r/o->r/w, deletion
* Single file (without project) compilation is now supported, for quick tests.
* Code::Blocks now allows multiple files selection when adding link libraries.
* BCC compiler is now working correctly for DLLs and static libraries.
* Find-in-Files supports searching in arbitrary paths/filemasks (outside of project).
* All Code::Blocks internal file formats (project, workspace, etc) are now valid XML.
* Many new editor settings.
* Many other bug-fixes.