Я уже писал о написании игр с помощью SDL на Python (pygame), хотя, до продолжения у меня руки не дошли, к сожалению. Тем не менее, я так же хочу написать, как я подключал SDL библиотеку для разработки на С++ в моей разлюбимой IDE NetBeans. Причины для выбора NetBeans довольно забавные: у меня не хватало места на диске для установки Visual Studio, а NetBeans уже был и с ним я неплохо знаком. Сначала я думал, что достаточно будет скачать CDT (С Developer Tools) и вперед, но все не так просто оказалось.
В качестве компилятора можно испорльзовать GCC и G++. Есть 2 пакета, откуда его можно получить: Cygwin и MinGW. Свою эпопею я начал с MinGW, но проблема в том, что make в MinGW не поддерживается NetBeans, и надо будет доустанавливать MSYS, которая находится на том же сайте. Кроме того внутренний терминал NetBeans будет работать только с Cygwin. Поэтому в итоге я пришел к тому, что у меня стоит Cygwin.
Устанавливайте в папку без пробелов, если вы большой любитель порядка и хотите его всенепременно в Program Files - сделайте символическую ссылку C:/cygwin -> C:/Program Files/Cygwin, как это сделал я. При установке выберите gcc, g++, gdb, make и все, что он вам еще предложит, не откладывайте инсталлер далеко, вероятно, придется доустановить библиотеки libintl-3, libintl-8, libiconv, libncursesw. Не могу точно сказать что он сделает автоматически, потому как на момент установки у меня уже было скачано несколько библиотек вручную.
После установки Cygwin в NetBeans открывайте Tools -> Options -> C/C++, на первой вкладке Build Tools нажимайте Add и указывайте путь к папке C:/cygwin/bin, откуда NetBeans должен подцепить компиляторы и подставить их в нужные поля.
На этом настройка IDE закончена, вы можете создать C++ проект (обратите внимание, вы создаете C/C++ проект, выбор между собственно C и C++ происходит в маленьком выпадающем меню справа, рядом со строкой Create Main File. Если у вас будет С проект, и вы, например заинклюдите
Время настроить SDL. С скачиваем . Оттуда копируем в наш проект папку lib, include, а из папки bin кладем SDL.dll в корень проекта. Далее идем в свойства проекта:
1. Build -> C++ Compiler -> General -> Include Directories и добавляем папку include/SDl, а так
же укажем -O3 в Additional Options.
2. Build -> Linker -> Additional Library Directories указываем папку lib, в Libraries добавляем файлы (Add Library File) libSDLmain.dll.a, libSDLmain.a в этом же порядке. Если мы нажмем Additional Options, то увидим там в конце строку "-LSDL SDL/libSDLmain.a SDL/libSDL.dll.a", что есть хорошо.
Наконец, в main.cpp можно написать:
#include "include/SDL/SDL.h" int main(int argc, char** argv) { SDL_Init(SDL_INIT_EVERYTHING); SDL_SetVideoMode(640, 480, 0, SDL_HWSURFACE | SDL_DOUBLEBUF); SDL_Quit(); return 0; }
Теперь можно нажать кнопку RUN и увидеть быстро моргнувшее окно SDL и надпись RUN SUCCESSFUL (total time: 326ms). Успех.





