Программирование. C, C++ . IDE Code::Blocks.

При подготовке к очередному докладу в клубе «У самовара» по теме «Обзор современных IDE», неожиданно пришло понимание того, что просто невозможно  взять и кратко изложить данную тему в одном докладе. Как говориться нет худа без добра. Вместе с этим пришла и мысль разбить данную тему на несколько докладов, а также написать ряд статей по этой теме.

Итак ближе к делу. В данном статье я расскажу, как установить и начать использовать Code::Blocks в Ubuntu 9.04.


ВВЕДЕНИЕ

Code::Bloks — свободная кроссплатформенная интегрированная среда разработки. Code::Blocks написана на Си++ и использует библиотеку wxWidgets. Имея открытую архитектуру, может масштабироваться за счёт подключаемых модулей. Поддерживает языки программирования С, С++, D (с ограничениями).

Code::Blocks разрабатывается для Windows, Linux и Mac OS X.

Распространяется по лицензии GNU GPL.

УСТАНОВКА

Обновляем список пакетов:

$ sudo aptitude update

Устанавливаем требуемые пакеты:

$ sudo aptitude install codeblocks codeblocks-contrib

Для разработки нам также потребуется установить следующие пакеты:

$ sudo aptitude install build-essential gdb subversion automake autoconf libtool libgtk2.0-dev libxmu-dev libxxf86vm-dev

Ну и конечно установим сразу родные для Code::Blocks пакеты для программирования GUI wxWidgets:

$ sudo aptitude install libwxbase2.8-dev wx2.8-headers libwxgtk2.8-dev wx-common

Пробуем запустить IDE. Приложение->Программирование->Code::Blocks IDE. При первом запуске у вас спросят, какой компилятор использовать по умолчанию, здесь просто выберем «GNU GCC compiler».

Итак, вот мы получили красивую и функциональную IDE в свое распоряжение. Теперь вы можете с легкостью выполнять курсовые и лабораторные работы по таким дисциплинам, как «Структур и алгоритмы обработки данных» и подобных.

Да, но нам этого мало, мы хотим большего, скажите вы. Здесь полностью с вами согласен.

wxWidgets это несомненно хорошо для программирования GUI интерфейсов, но зачем останавливаться, если есть возможность использовать множество других библиотек.

ДОПОЛНИТЕЛЬНО

Устанавливаем FreeGLUT для разработки OpenGL приложений:

$ sudo aptitude install freeglut3 freeglut3-dev

Поздравляю теперь вы с успехом можете создавать в своих приложениях 3D объекты.

Примечания: При создании первого проекта, когда у вас просят указать местоположение GLUT «Please, Select GLUT’s location:», необходимо просто вручную ввести /usr/

На выходе мастера создания приложений мы получим демо пример с использованием GLUT, конечно на картинке объекты статичны, но в действительности они вращаются :).

Такс отлично, а что у нас еще есть? А у нас, есть GLFW.
Установим его:

$ sudo aptitude install freeglut3 freeglut3-dev

По аналогии с предыдущим, кода в мастере у вас спросят о местоположении укажите /usr/. Кроме того, необходимо зайти в меню Project->Build option  на закладке Linker settings в поле Other linker options добавить парамметр -lXrandr иначе выш проект не сможет.

Если обнаружиться, что у вас все равно не хватает libxrandr-dev установим его:

$ sudo apt-get install libxrandr-dev

После того, как пройдем все шаги мастера и скомпилируем демо приложение, мы сможем наслаждаться таким приложением, две треугольные плоскости с градиентной заливкой вращающий вокруг оси 🙂

Как, нравится? Сейчас поговорим еще про одну замечательную библиотеку SDL . Прежде всего эта платформа для создания графических 2 D приложений, также она поддерживает OpenGL .

Для начала должно хватить установки следующих пакетов:

$ sudo aptitude install libsdl1.2-dev libsdl-image1.2-dev libsdl-sound1.2-dev libsdl-mixer1.2-dev

При создании нового проекта через мастер вы получите простейшее приложение, задача которого вывести на экран картинку *.bmp, с чем приложение справляется на 5+.

Ну, вот так незаметно, я постарался в данной статье показать, что есть жизнь в линуксе и что можно писать отличные графические приложения, а  также игры в GNU/Linux и в частности в Ubuntu. Но это еще не все.

РУКОВОДСТВА

в процессе подготовки

ОСВАИВАЕМ СРЕДУ Code::Blocks

в процессе подготовки

Продолжение следует.