Getting Started with Code::Blocks

Exclusive offer: get 50% off this eBook here
C++ Application Development with Code::Blocks

C++ Application Development with Code::Blocks — Save 50%

Develop advanced applications with Code::Blocks quickly and efficiently with this concise, hands-on guide with this book and ebook

$23.99    $12.00
by Biplab Kumar Modak | October 2013 | Open Source

In this article by Biplab Kumar Modak, the author of C++ Application Development with Code::Blocks, we'll download Code::Blocks, install and learn more about it.

(For more resources related to this topic, see here.)

Why Code::Blocks?

Before we go on learning more about Code::Blocks let us understand why we shall use Code::Blocks over other IDEs.

  • It is a cross-platform Integrated Development Environment (IDE). It supports Windows, Linux, and Mac operating system.
  • It supports GCC compiler and GNU debugger on all supported platforms completely.
  • It supports numerous other compilers to various degrees on multiple platforms.
  • It is scriptable and extendable. It comes with several plugins that extend its core functionality.
  • It is lightweight on resources and doesn't require a powerful computer to run it.
  • Finally, it is free and open source.

Installing Code::Blocks on Windows

Our primary focus of this article will be on Windows platform. However, we'll touch upon other platforms wherever possible. Official Code::Blocks binaries are available from www.codeblocks.org. Perform the following steps for successful installation of Code::Blocks:

  1. For installation on Windows platform download codeblocks-12.11mingw-setup.exe file from http://www.codeblocks.org/downloads/26 or from sourceforge mirror http://sourceforge.net/projects/codeblocks/files/Binaries/12.11/Windows/codeblocks-12.11mingw-setup.exe/download and save it in a folder.
  2. Double-click on this file and run it. You'll be presented with the following screen:

  3. As shown in the following screenshot click on the Next button to continue. License text will be presented. The Code::Blocks application is licensed under GNU GPLv3 and Code::Blocks SDK is licensed under GNU LGPLv3. You can learn more about these licenses at this URL—https://www.gnu.org/licenses/licenses.html.

  4. Click on I Agree to accept the License Agreement. The component selection page will be presented in the following screenshot:

  5. You may choose any of the following options:
    • Default install: This is the default installation option. This will install Code::Block's core components and core plugins.
    • Contrib Plugins: Plugins are small programs that extend Code::Block's functionality. Select this option to install plugins contributed by several other developers.
    • C::B Share Config: This utility can copy all/parts of configuration file.
    • MinGW Compiler Suite: This option will install GCC 4.7.1 for Windows.
  6. Select Full Installation and click on Next button to continue. As shown in the following screenshot installer will now prompt to select installation directory:

  7. You can install it to default installation directory. Otherwise choose Destination Folder and then click on the Install button. Installer will now proceed with installation.

  8. As shown in the following screenshot Code::Blocks will now prompt us to run it after the installation is completed:

  9. Click on the No button here and then click on the Next button. Installation will now be completed:

  10. Click on the Finish button to complete installation. A shortcut will be created on the desktop.

This completes our Code::Blocks installation on Windows.

Installing Code::Blocks on Linux

Code::Blocks runs numerous Linux distributions. In this section we'll learn about installation of Code::Blocks on CentOS linux. CentOS is a Linux distro based on Red Hat Enterprise Linux and is a freely available, enterprise grade Linux distribution. Perform the following steps to install Code::Blocks on Linux OS:

  1. Navigate to Settings | Administration | Add/Remove Software menu option. Enter wxGTK in the Search box and hit the Enter key. As of writing wxGTK-2.8.12 is the latest wxWidgets stable release available. Select it and click on the Apply button to install wxGTK package via the package manager, as shown in the following screenshot.

  2. Download packages for CentOS 6 from this URL—http://www.codeblocks.org/downloads/26.

    Unpack the .tar.bz2 file by issuing the following command in shell:

    tar xvjf codeblocks-12.11-1.el6.i686.tar.bz2

  3. Right-click on the codeblocks-12.11-1.el6.i686.rpm file as shown in the following screenshot and choose the Open with Package Installer option.

  4. The following window will be displayed. Click on the Install button to begin installation, as shown in the following screenshot:

  5. You may be asked to enter the root password if you are installing it from a user account. Enter the root password and click on the Authenticate button. Code::Blocks will now be installed.
  6. Repeat steps 4 to 6 to install other rpm files.

We have now learned to install Code::Blocks on the Windows and Linux platforms. We are now ready for C++ development. Before doing that we'll learn about the Code::Blocks user interface.

First run

On the Windows platform navigate to the Start | All Programs | CodeBlocks | CodeBlocks menu options to launch Code::Blocks. Alternatively you may double-click on the shortcut displayed on the desktop to launch Code::Blocks, as in the following screenshot:

On Linux navigate to Applications | Programming | Code::Blocks IDE menu options to run Code::Blocks.

Code::Blocks will now ask the user to select the default compiler. Code::Blocks supports several compilers and hence, is able to detect the presence of other compilers. The following screenshot shows that Code::Blocks has detected GNU GCC Compiler (which was bundled with the installer and has been installed). Click on it to select and then click on Set as default button, as shown in the following screenshot:

Do not worry about the items highlighted in red in the previous screenshot. Red colored lines indicate Code::Blocks was unable to detect the presence of a particular compiler.

Finally, click on the OK button to continue with the loading of Code::Blocks. After the loading is complete the Code::Blocks window will be shown.

The following screenshot shows main window of Code::Blocks. Annotated portions highlight different User Interface (UI) components:

Now, let us understand more about different UI components:

  • Menu bar and toolbar: All Code::Blocks commands are available via menu bar. On the other hand toolbars provide quick access to commonly used commands.
  • Start page and code editors: Start page is the default page when Code::Blocks is launched. This contains some useful links and recent project and file history. Code editors are text containers to edit C++ (and other language) source files. These editors offer syntax highlighting—a feature that highlights keywords in different colors.
  • Management pane: This window shows all open files (including source files, project files, and workspace files). This pane is also used by other plugins to provide additional functionalities. In the preceding screenshot FileManager plugin is providing a Windows Explorer like facility and Code Completion plugin is providing details of currently open source files.
  • Log windows: Log messages from different tools, for example, compiler, debugger, document parser, and so on, are shown here. This component is also used by other plugins.
  • Status bar: This component shows various status information of Code::Blocks, for example, file path, file encoding, line numbers, and so on.

Introduction to important toolbars

Toolbars provide easier access to different functions of Code::Blocks. Amongst the several toolbars following ones are most important.

Main toolbar

The main toolbar holds core component commands. From left to right there are new file, open file, save, save all, undo, redo, cut, copy, paste, find, and replace buttons.

Compiler toolbar

The compiler toolbar holds commonly used compiler related commands. From left to right there are build, run, build and run, rebuild, stop build, build target buttons. Compilation of C++ source code is also called a build and this terminology will be used throughout the article.

Debugger toolbar

The debugger toolbar holds commonly used debugger related commands. From left to right there are debug/continue, run to cursor, next line, step into, step out, next instruction, step into instruction, break debugger, stop debugger, debugging windows, and various info buttons.

Summary

In this article we have learned to download and install Code::Blocks. We also learnt about different interface elements.

Resources for Article:


Further resources on this subject:


C++ Application Development with Code::Blocks Develop advanced applications with Code::Blocks quickly and efficiently with this concise, hands-on guide with this book and ebook
Published: October 2013
eBook Price: $23.99
Book Price: $39.99
See more
Select your format and quantity:

About the Author :


Biplab Kumar Modak

Biplab Kumar Modak is a passionate, open-source software developer. He started learning programming at school in the year 1996 with a BBC Micro computer system. The sheer limitation of computing resources in a BBC Micro computer system forced him to think out-of-the-box and sharpened his programming skills. He participated in several software development competitions at school level and won several awards before joining college.

By then he started learning and developing in C and C++ language. He used his C/C++ development skills for his academic and extracurricular projects. He started contributing to the Code::Blocks project in the year 2006 and since then has remained as one of the developers of Code::Blocks. He has also contributed to a few other open source projects. Overall he has about 17 years of freelance software development experience and out of which 14 years in C/C++ development experience.

He is basically an Civil and Structural Engineer by profession. His job involves analyzing and designing tall buildings and other structures. He was one of the key engineers behind recent upgrade of Terminal 1, Singapore Changi Airport, and several public and private housing projects. He spends his free time in learning new technologies and in developing Code::Blocks and other such projects.

Books From Packt


Boost C++ Application Development Cookbook
Boost C++ Application Development Cookbook

 Instant Windows 8 C++ Application Development How-to [Instant]
Instant Windows 8 C++ Application Development How-to [Instant]

 Microsoft Visual C++ Windows Applications by Example
Microsoft Visual C++ Windows Applications by Example

Mastering Windows 8 C++ App Development
Mastering Windows 8 C++ App Development

Boost.Asio C++ Network Programming
Boost.Asio C++ Network Programming

Getting Started with C++ Audio Programming for Game Development
Getting Started with C++ Audio Programming for Game Development

 CryENGINE Game Programming with C++, C#, and Lua
CryENGINE Game Programming with C++, C#, and Lua

C Programming for Arduino
C Programming for Arduino


No votes yet

Post new comment

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
S
F
d
u
n
v
Enter the code without spaces and pay attention to upper/lower case.
Code Download and Errata
Packt Anytime, Anywhere
Register Books
Print Upgrades
eBook Downloads
Video Support
Contact Us
Awards Voting Nominations Previous Winners
Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Resources
Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software