SDL + MinGW = дружба!
Содержание:
1.Введение (Вы читаете данный раздел);
2. Установка SDL;
3. Сборка с помощью make;
4. Распространение SDL-программы.
Пожалуй, SDL - самая популярная библиотека для создания кросс-платформенных игр. И если под Linux трудностей со сборкой таких игр обычно не возникает, то в Windows начинаются танцы с бубнами. И есть много этих танцев - на любой вкус. Существует целый зоопарк компиляторов, сред разработки и систем сборки. Visual Studio C++ (разработчики SDL любят именно её), MinGW (разработчики UNIX-школы любят именно его), CygWin, Dev-C++, GNU make, Scons и так далее. Сеть наводнена криками о помощи. Эта статья не призвана перечислять каждый из этих криков и пытаться решить его. Более того, статья опишет тоже своего рода шаманский танец, однако этот танец легко воспроизводится на любой машине.
Я рассмотрю, как под Windows собрать в MinGW программу на СС++, использующую SDL и сопутствующие библиотеки, такие как SDL_Image, SDL_Mixer и SDL_Ttf. Не знаю, какие именно из описанных средств у вас уже установлены, поэтому статья будет пошагово двигаться по установке всех нужных средств сборки. Начну с важных предпосылок:
1. SDL-программы будут компилироваться из консоли Windows («Пуск - Программы - Стандартные - Командная строка») либо из консоли MinGW.
2. В исходниках заголовочные файлы SDL и библиотек-спутников подключаются следующим образом:
Либо так:
То есть название заголовочного файла начинается с каталога SDL. Обратите внимание, что если вы захотите компилировать тестовые программы из исходника SDL, то и в них потребуется изменить строки подключения заголовков с SDL.h на SDL/SDL.h.
3. Собирать программу буду двумя способами:
- через традиционный makefile и утилиту make;
- через Scons.
Предположим, что у вас еще не установлена MinGW. Зайдем на сайт проекта (www.mingw.org) и скачаем последнюю версию Automated MinGW Installer. Там на выбор предлагается установщик с графическим интерфейсом (mingw-get-inst) и консольный вариант (mingw-get). Для простоты изложения пусть будет первый вариант. При установке ставим галочки на C++ compiler и MSYS Basic System. Если вам нужны autotools, openssl/ssh и libtool, то поставьте еще MinGW Developer Toolkit. Дождемся, пока установщик всё скачает и установит.
Теперь пропишем пути к бинарникам MinGW и Msys. Для примера, пусть оба установлены в C:MinGW (по умолчанию так и есть). Перейдем в «Настройки — Панель управления — Система», вкладка «Дополнительно», кнопка «Переменные среды». В этом окне дополняем переменную Path строкой:
Всё. MinGW установлен - можно начинать пользоваться.
1.
2. Установка SDL;
3. Сборка с помощью make;
4. Распространение SDL-программы.
Пожалуй, SDL - самая популярная библиотека для создания кросс-платформенных игр. И если под Linux трудностей со сборкой таких игр обычно не возникает, то в Windows начинаются танцы с бубнами. И есть много этих танцев - на любой вкус. Существует целый зоопарк компиляторов, сред разработки и систем сборки. Visual Studio C++ (разработчики SDL любят именно её), MinGW (разработчики UNIX-школы любят именно его), CygWin, Dev-C++, GNU make, Scons и так далее. Сеть наводнена криками о помощи. Эта статья не призвана перечислять каждый из этих криков и пытаться решить его. Более того, статья опишет тоже своего рода шаманский танец, однако этот танец легко воспроизводится на любой машине.
Я рассмотрю, как под Windows собрать в MinGW программу на СС++, использующую SDL и сопутствующие библиотеки, такие как SDL_Image, SDL_Mixer и SDL_Ttf. Не знаю, какие именно из описанных средств у вас уже установлены, поэтому статья будет пошагово двигаться по установке всех нужных средств сборки. Начну с важных предпосылок:
1. SDL-программы будут компилироваться из консоли Windows («Пуск - Программы - Стандартные - Командная строка») либо из консоли MinGW.
2. В исходниках заголовочные файлы SDL и библиотек-спутников подключаются следующим образом:
#include "SDL/SDL.h"
#include "SDL/SDL_ttf.h"
#include "SDL/SDL_image.h"
#include "SDL/SDL_mixer.h"
#include "SDL/SDL_ttf.h"
#include "SDL/SDL_image.h"
#include "SDL/SDL_mixer.h"
Либо так:
#include
#include
#include
#include
#include
#include
#include
То есть название заголовочного файла начинается с каталога SDL. Обратите внимание, что если вы захотите компилировать тестовые программы из исходника SDL, то и в них потребуется изменить строки подключения заголовков с SDL.h на SDL/SDL.h.
3. Собирать программу буду двумя способами:
- через традиционный makefile и утилиту make;
- через Scons.
Этап 1. Установка и настройка MinGW
Предположим, что у вас еще не установлена MinGW. Зайдем на сайт проекта (www.mingw.org) и скачаем последнюю версию Automated MinGW Installer. Там на выбор предлагается установщик с графическим интерфейсом (mingw-get-inst) и консольный вариант (mingw-get). Для простоты изложения пусть будет первый вариант. При установке ставим галочки на C++ compiler и MSYS Basic System. Если вам нужны autotools, openssl/ssh и libtool, то поставьте еще MinGW Developer Toolkit. Дождемся, пока установщик всё скачает и установит.
Теперь пропишем пути к бинарникам MinGW и Msys. Для примера, пусть оба установлены в C:MinGW (по умолчанию так и есть). Перейдем в «Настройки — Панель управления — Система», вкладка «Дополнительно», кнопка «Переменные среды». В этом окне дополняем переменную Path строкой:
C:MinGWbin;C:MinGWmsys1.0bin
Всё. MinGW установлен - можно начинать пользоваться.