Программирование / IDE
Добавить в избранное

Установка и настройка Code::Blocks

Бесплатная кросс-платформенная IDE с открытым исходным кодом для языков программирования C/C++ и Fortran. Удобна для разработки, так как имеет множество встроенных функций, необходимых для пользователя. Создана так, чтобы иметь возможность легко расширяться и быть настраиваемой
картинка к записи Установка и настройка Code::Blocks

Code::Blocks — свободная интегрированная среда разработки (IDE) с отрытым исходным кодом, которая поддерживает использование различных компиляторов. Code::Blocks имеет открытую архитектуру, что позволяет ему масштабироваться за счёт подключаемых модулей (можно писать программы как под windows, linux, так и под различные микропроцессоры типа avr и stm32). Отладчик кода в Code::Blocks поддерживает точки останова в исходном коде или в данных, которые обрабатывает программа.

Обычно с Code::Blocks используют компилятор MinGW, который поставляется в комплекте (можно скачать дистрибутив и без встроенного компилятора). MinGW – это вариант компилятора GNU C/C++ для Windows. MinGW – это сокращение "Minimalist GNU для Windows". Набор MinGW включает инструменты для программирования с открытым исходным кодом, которые не зависят от каких-либо платных сторонних библиотек. Он используется многими средами разработки (Visual Studio использует собственный компилятор). MinGW включает набор GNU Compiler Collection (GCC), включая компиляторы C, C ++, ADA и Fortran.

Code::Blocks доступен под Windows, Linux и Mac OS X. Сайт проекта - codeblocks.org.

Официальная документация (мануал) - открыть PDF.

Установка компилятора MinGW

Установка самого Code::Blocks не представляет ничего сложного. Желательно только устанавливать его в папку, в пути к которой нет пробелов или кириллицы. Дистрибутив Code::Blocks версии 17.12 содержал старую версию компилятора MinGW, поэтому приходилось отдельно скачивать Code::Blocks без компилятора MinGW и затем устанавливать компилятор. В настоящий момент версия Code::Blocks 20.03 содержит актуальную версию MinGW (по умолчанию используется 64-разрядная версия компилятора, но можно скачать дистрибутив и с 32-разядной версией). Но на всякий случай рассмотрим отдельно установку MinGW (на примере 32-разрядной версии). Сначала скачиваем дистрибутив Code::Blocks с сайта проекта mingw.org. После запуска появится следующее окно.

Нажмимаем Install и получаем следующее окно.

Здесь в поле Installation Directory указываем расположение файлов компилятора. По умолчанию это C:\MinGW, его и оставляем. Нажимаем Continue и начинается загрузка и установка менеджера для установки MinGW.

Нажимаем Continue и получаем следующее окно.

Для программированя на C++ выбираем для установки пакеты mingw32-base-bin (A Basic MinGW Installation) и mingw32-gcc-g++-bin (The GNU C++ Compiler), а затем жмём в меню Installation -> Apply Changes. Появится окно, в котором будет отображаться загрузка выбранных пакетов.

По завершении загрузки пакетов нажимаем на кнопку Close

При первом запуске Code::Blocks автоматически обнаружит установленный компилятор. При возникновении проблем необходимо перейти в меню Settings -> Compiler... и на вкладке Toolchain executables проверить правильность пути к MinGW, а также имена файлов компилятора и линковщика. Теперь можно создавать проект.

Создание проекта

Для создания проекта необходимо перейти в меню File -> New -> Project.... Либо сразу нажать на кнопку Create a new project на стартовой странице.

В появившемся окне выбираем необходимый тип проекта. Здесь мы видим, что Code::Blocks имеет большое количество шаблонов проектов. В нашем случае это Console application (консольное приложение).

В следующем окне выбираем используемый язык программирования. Выбираем C++ и нажимаем на кнопку Next.

Далее в поле Project Title вписываем название проекта. В нашем случае это Test. Тут же указываем расположение проекта на диске (поле Folder to create project in). В указанной папке Code::Blocks автоматически создаст папку с ранее указанным названием проекта. Указав имя папки и имя файла, нажимаем на кнопку Next.

В следующем окне выбираем компилятор, а также сценарии сборки. По умолчанию выбран GNU GCC Compiler, который мы и будем использовать. Сценарии сборки позволяют получить несколько версий одного приложения. По умолчанию предполагается два сценария: Debug (используется при отладке) и Release (сценарий компиляции готового приложения). Хотя бы один из сценариев должен быть выбран. Если выбраны оба сценария, то в дальнейшем можно будет переключаться между ними.

Жмём Finish и получаем минимальную программу, так называемый Hello World!

Нажмимаем F9 для компиляции и запуска программы и получаем следующее окно.

Обратите внимание на кнопки на панели инструментов, предназначенные для запуска и компиляции программы.

Первая слева кнопка Build (с жёлтой шестерёнкой) запускает только компиляцию программы, вторая Run (с зелёным треугольником) запускает последний скомпилированный exe-файл программы, третья Build and Run (с зелёным треугольником и жёлтой шестерёнкой) — сначала запускает компиляцию программы, а затем запускает полученный exe-файл программы. Частой ошибкой является использование кнопки запуска (с зелёным треугольником) для компиляции и запуска программы. В этом случае внесённые в исходный код изменения не будут влиять на поведение программы, поскольку программа не была перекомпилирована.

Если открытый для редактирования файл был изменен, то на его вкладке слева от имени появится звездочка как на рисунке ниже. Для сохранения программ, как и во многих других приложениях достаточно нажать сочетание клавиш Ctrl+S. Расположение (путь) и имя отрытого в данный момент файла отображается в строке состояния, в левой нижней части окна.

Если ваши программы имеют небольшой объем и состоят только из одного файла, то лучше создавать не проект, а просто новый файл (File -> New -> Empty file). Связано это с тем, что если у вас несколько проектов, то Code::Blocks будет компилировать и запускать только активный проект. Определить какой проект у вас активен в текущий момент можно по состоянию окна Management, в котором показываются все открытые проекты и файлы. Если одновремено открыто несколько проектов, то название активного будет выделено полужирным шрифтом. Если окно отсутствует, то открыть его можно через меню View -> Manager.

Для переключения между проектами необходимо навести указатель мыши, на тот проект, который вы необходимо сделать активным и затем дважды кликнуть левой кнопкой мыши на названии проекта либо кликнуть один раз правой кнопкой мыши и в появившемся контекстном меню выбрать пункт Activate project. В этом же меню доступны другие действия с проектом (в том числе добавление в проект новых файлов).

Частой ошибкой является редактирование файлов одного проекта, а запуск и тестирование другого проекта. Также если у вас открыт проект и просто отдельный файл программы, то Code::Blocks будет компилировать и запускать только активный проект. Поэтому в учебных целях, когда весь проект зачастую состоит из одного файла желательно создавать не проекты, а отдельные .cpp файлы.

Поддержка кириллицы в консоли

В операционных системах семейства Windows при попытке вывести в консоль сообщение, содержащее кириллические символы можно увидеть следующую картину:

Проблема отображения кириллических символов в консоли Windows связана с тем, что консоль в этой операционной системе имеет собственную настройку кодовой страницы. Если Windows использует кодировку cp1251 (она же windows-1251), то консоль по умолчанию использует cp866 использовавшуюся в MS-DOS. Поэтому для корректного ввода и вывода кириллицы на консоль надо использовать пару функций SetConsoleCP() и SetConsoleOutputCP() соответственно. В качестве единственного параметра обеим функциям передается номер кодовой страницы – 1251. Для использования кодировки UTF-8 необходимо передать значение CP_UTF8.

Ниже показан пример программы, которая сначала просто выводит строку, содержащую кириллические символы, а затем считывает строку и выводит её обратно на экран.

#include <iostream>
#include <windows.h>

using namespace std;

int main()
{
   SetConsoleCP(1251);         // установка кодовой страницы в поток ввода
   SetConsoleOutputCP(1251);       // установка кодовой страницы в поток вывода
   cout << "Привет мир!" << endl;    // вывод строки
   string s;
   getline(cin, s);          // ввод строки
   cout << s;
   return 0;
}

Если после запуска программы текст отображается некорректно, то необходимо щёлкнуть левой кнопкой мыши по заголовку окна (где показывается путь к запущенному .exe файлу) и в контекстном меню выбрать пункт Свойства. Затем на вкладке Шрифт установить шрифт Lucida Console и выбрать удобный размер шрифта (там же можно настроить и другие параметры). После этого символы кириллицы будут корректно отображаться. Данную настройку достаточно выполнить один раз, для других программ и проектов будет достаточно установить кодовую страницу.

Программа выведет строку «Привет, мир!», а затем попросит ввести строку. Введём строку с кириллицей, например «Привет, я новый пользователь». После ввода программа выведет строку на экране в том же виде, как мы и ввели.

Часто для решения проблем с кириллицей используют вызов функции setlocale(LC_ALL, "Russian"). Однако, в этом случае вывод будет осуществляться в cp1251, а ввод – в cp866. Это приводит к тому, что в памяти программы введённая с кириллическими символами строка хранится в другой кодировке. Наглядно это можно увидеть, если в показанном примере закомментировать вызов функции SetConsoleCP(). Строка которую выдаст программа будет отличаться от той, что ввели с клавиатуры.

Дополнительные настройки

  • По умолчанию при установке Code::Blocks на панели инструментов доступно большое количество тулбаров, которые зачастую не используются, но при этом загромождают интерфейс среды программирования. Поэтому желательно перейти в меню View -> Toolbars и оставить галочки только напротив пунктов Compiler и Main.
  • Для того, чтобы консольное приложение не закрывалось сразу после вывода результатов работы, необходимо перейти в свойства проекта (нажать правой кнопкой на названии проекта и выбрать пункт Properties). Далее на вкладке Build targets установить галочку Pause when execution ends.
  • Для включения поддержки стандартов 2011 и более поздних годов необходимо пройти в меню Settings -> Compiler... в раздел Global compiler settings и на вкладке Compiler settings выбрать первую вкладку compiler Flags и уже в ней отметить соответствующую галочку. Ниже показан пример для включения поддержки стандарта 2011 года.

  • Для изменения размера шрифта в редакторе кода достаточно зажать кнопку Ctrl и вращением колеса прокрутки (скролла) установить комфортный размер шрифта. Точно также можно изменить размер шрифта в окне Log & others (окно с выводом логов и сообщений). Только следует учесть, что при следующей сборке настройки этого окна сбросятся. Для того, чтобы настройки окна логов и сообщений сохранялась необходимо перейти в меню Settings -> Environment... перейти в раздел View и там в окошке Message log's font size установить комфортный размер шрифта.
  • Пункт меню View -> Logs или клавиша F2 отображают или прячут окно вывода сообщений компилятора внизу экрана.
  • Строка Process returned 0 (0x00) означает, что программа завершилась успешно. Если в строке выводится значение отличное от нуля, значит программа завершилась с ошибкой.
  • В строке состояния, в правой нижней части окна, отображается кодировка открытого файла. По умолчанию используется кодировка Windows-1251. Желательно использовать кодировку UTF-8, для этого необходимо перейти в меню Settings -> Editor... в раздел General settings и на вкладке Encoding settings выбрать кодировку UTF-8.

  • Для того, чтобы использовать скомпилированный файл программы отдельно от среды программирования необходимо изменить настройки компиляции. Для этого необходимо перейти в меню Project в раздел Build options... или в меню Settings -> Compiler... в раздел Global compiler settings (во втором случае настройки будут глобальными для всех проектов и простых программ состоящих из одного cpp файла) и на вкладке Linker settings в поле ввода Other linker options добавить следующие строки:

         -static
         -static-libgcc
         -static-libstdc++

Горячие клавиши

Сочетание клавиш Назначение
Редактирование кода
Ctrl + Z Отменить последнее действие
Ctrl + Shift + Z Повторить последнее действие
Ctrl + X Вырезать выделенный текст
Ctrl + C Копировать выделенный текст
Ctrl + V Вставить текст из буфера обмена
Ctrl + A Выделить весь текст
F11 Переключиться между модулем и заголовочным файлом
Ctrl + Shift + C Комментировать выделенного блока кода
Ctrl + Shift + X Раскомментировать выделенного блока кода
Ctrl + D Дублировать строку
Ctrl + пробел / Ctrl + J Автозаполнение / Сокращения
Ctrl + Shift + пробел Показать подсказку
Ctrl + T Переместить строку выше
Ctrl + B Переключить закладку
Alt + PgUp Перейти к предыдущей закладке
Alt + PgDown Перейти к следующей закладке
F12 Свернуть / развернуть текущий блок
Shift + F12 Свернуть / развернуть все блоки
Ctrl + Keypad "+" Увеличить размер текста
Ctrl + Keypad "-" Уменьшить размер текста
Ctrl + Keypad "/" Сбросить размер текста
Ctrl + Tab Переход между недавно открытыми файлами
Tab Добавить отступ
Shift + Tab Удалить отступ
Ctrl + BackSpace Удалить символы до начала слова
Ctrl + Delete Удалить символы до конца слова
Ctrl + Shift + BackSpace Удалить символы до начала строки
Ctrl + Shift + Delete Удалить символы до конца строки
Home Перейти в начало строки
Ctrl + Home Перейти в начало файла
Ctrl + Shift + Home Выделить все от текущей строки до начала файла
End Перейти в конец строки
Ctrl + End Перейти в конец файла
Ctrl + Shift + End Выделить все от текущей строки конца файла
Ctrl + L Вырезать текущую строку
Ctrl + Shift + L Удалить текущую строку
Работа с файлами
Ctrl + N Новый файл или проект
Ctrl + O Открыть существующий файл или проект
Ctrl + S Сохранить текущий файл
Ctrl + Shift + S Сохранить все файлы
Ctrl + F4 / Ctrl + W Закрыть текущий файл
Ctrl + Shift + F4 / Ctrl + Shift + W Закрыть все файлы
Ctrl + Tab Перейти к следующему открытому файлу
Ctrl + Shift + Tab Перейти к предыдущему открытому файлу
Просмотр
F2 Показать / спрятать окно сообщений
Shift + F2 Показать / спрятать окно менеджера
Ctrl + Shift + Up Переместить проект вверх (в дереве проектов)
Ctrl + Shift + Down Переместить проект вниз (в дереве проектов)
Alt + F5 Активировать предыдущий проект (в дереве проектов)
Alt + F6 Активировать следующий проект (в дереве проектов)
Ctrl + вращение колеса мыши Приблизить / Уменьшить
Поиск
Ctrl + F Искать в тексте
F3 Найти следующее совпадение
Shift + F3 Найти предыдущее совпадение
Ctrl + Shift + F Искать в файлах
Ctrl + R Заменить
Ctrl + Shift + R Заменить в файлах
Ctrl + G Перейти к строке
Ctrl + F3 Перейти к следующей изменённой строке
Ctrl + Shift + F3 Перейти к предыдущей изменённой строке
Alt + G Перейти к файлу
Ctrl + Alt + G Перейти к функции
Ctrl + PgUp Перейти к предыдущей функции
Ctrl + PgDn Перейти к следующей функции
Ctrl + Shift + . Перейти к объявлению (декларации)
Ctrl + . Перейти к реализации
Ctrl + Alt + . Открыть подключаемый файл
Сборка и запуск проекта
Ctrl + Shift + F9 Компиляция текущего файла
Ctrl + F9 Сборка
F9 Сборка и запуск
Ctrl + F10 Запуск
Ctrl + F11 Повторная сборка
Отладка проекта
F8 Запуск отладки
Ctrl + F7 Пропуск блок кода
Shift + F7 Вход в блок кода
Ctrl + Shift + F7 Выход из блока кода
F5 Смена сотояния точки останова
F4 Выполнение кода до курсора
Alt + F1 Предыдущая ошибка

Автор материала: Nizam Keramov

Поделиться
Понравился материал?

Комментарии

Добавить комментарий
новая версия

Ждём Сергей с нетерпением обзор с примерами на новую версию.

Нравится: 0Не нравится: 0

Ответить

аноним

Не знал что можно горячими клавишами пользоваться

Нравится: 0Не нравится: 0

Ответить

Спасибо

Хорошая ide, сам пользуюсь длительное время, для большинства стандартных задач подходит идеально. Искал более глубоки настройки программы, попал сюда. Хорошего дня

Нравится: 0Не нравится: 0

Ответить

Благодарсвую

На официальном сайте уже 20я версия, они схожи? Можно по этой документации поставить? Обновление будете выкладывать?

Нравится: 0Не нравится: 0

Ответить

Добрый день! Некоторые скриншоты недоступны, можете обновить? Спасибо

Нравится: 0Не нравится: 0

Ответить

СПАС-И-БО

Хороший материал, подробно.

Нравится: 0Не нравится: 0

Ответить

Посвежее бы доку. Спасибо

Нравится: 0Не нравится: 0

Ответить

Привет

Часть скриншотов установки похоже недоступна, обновите пожалуйста материал на новую версию с рабочими скринами. Заранее велико помеже.

Нравится: 0Не нравится: 0

Ответить

Спасибо Низам, помог

Нравится: 0Не нравится: 0

Ответить

Удачи проекту, спасибо за подробную информацию по установке Code Blocks

Нравится: 0Не нравится: 0

Ответить

Большое спасибо

Спасибо за отличный материал, немного устарел, но по делу. Приятно

Нравится: 0Не нравится: 0

Ответить