Developer documentation

From CodeBlocks
Jump to: navigation, search

Official Code repository Subversion

Mirror by biplab (Read-only; refreshed every 10 minutes.)

Mirror by Jens (Read-only; refreshed every 10 minutes.)

Mirror by Obf (Read-only; refreshed manually.)

Articles for Code::Blocks developers.

  • Documentation
User's manual in various formats and languages.
Browse SDK documentation at as html.
  • Compile the complete Code::Blocks from sources on Windows and Linux
Code::Blocks uses Launchpad to coordinate translation efforts.
See also Code::Blocks' translation
The source code formatting style used in the Code::Blocks' source.
How to add support for new syntax lighting schemes.
Creating a diff file and then submitting it to the patch tracker.
Information about unicode standards and how unicode is handled in Code::Blocks' source code.
List of various development tips for Code::Blocks.
Information about scripting Code::Blocks with Squirrel.
Information about the architecture of Code::Blocks.
Information about the Code::Blocks SDK events and how to work with them.
Description of the format of each file Code::Blocks produces.
Tips and trick for working with our version control system.

Plug-In development


Using scripting to extend Code::Blocks' functionality

Developing C::B with Git

For devs who want to use Git to develop C::B, here are some steps to follow, especially you need to correctly set the SVN and GIT properties so that you can make your local git commits back to the official SVN repo. See Re: Read-only Git, SVN Repo for Code::Blocks, also stahta01 has a nice instruction about how to use git, see Development How to use a Code::Blocks Git Repo.

If you want to create a SVN style patch from git, see: This forum post.

Debugging C::B

  • When C::B crashed, it will generate a call-stack file "codeblocks.RPT", at the crash point, this is a text file, you can open it, if your C::B contains the debug information, it will have file and line information about each call. If it is a stripped version, but you have the debug version of C::B, you can try to run the Debugging made easier, this is a address2line UI interface works under Windows.
  • You can debug C::B under C::B (with the debugger plugin), also, you can link C::B to the debug version of wxWidgets library, so you can see whether a bug is located in C::B source code or wxWidgets' source code, see here: patch to build C::B against wx debug library