Собираем GZDoom
самостоятельно под OS X Mavericks
В этой статье я расскажу как скомпилировать GZDoom
под Apple OS X с
нуля. Для написания статьи будет использоваться виртуальная машина с чистой, но
настроенной MacOS 10.9 с 64-битным
ядром и 2 Гб оперативной
памяти и 2 процессорными ядрами (с
этой задачей идеально справляется VMware Workstation
10
с патчем-анлокером). Создаваемые программы смогут
выполняться на любой версии MacOS с 10.6 по 10.9
включительно. Создайте
ссылку на "Терминал" в
Dock - мы будем часто им пользоваться;
приложение находится по адресу
/Applications/Utilities/Terminal.app).
Разделим процесс на 4 этапа:
1) Скачивание необходимых сред разработки, утилит и библиотек
2) Конфигурирование среды сборки, установка библиотек
3) Получение исходного кода
4) Компиляция исходного кода
При повторной сборке переходите сразу к п. 3.
1. Файлы для скачивания
1. Apple Xcode 5.x: скачайте последнюю
доступную вам версию из App Store. При написании
статьи использовался Xcode 5.1-DP2
2.
FMOD Ex Programmers API -
скачайте последнюю версию под Macintosh
3.
CMake 3.0-rc5 - программа для конфигурации
сборки исходного кода под вашу систему.
4.
SDL 1.2.15
i386/x86_64 - мультимедийная библиотека
5.
GLEW 1.10.0 - OpenGL
библиотека
2. Установка программ
1.
Получение root доступа.
Задайте пароль для своего аккаунта (Системные настройки - Учётные записи -
Сменить пароль). Выполните команду
'sudo su' в
терминале и введите свой пароль - вы окажетесь в
root
шелле. Выполните команду
'passwd root' и задайте
пароль для суперпользователя
. Теперь вы сможете
получать
root доступ командой
su, при желании теперь можно снять пароль со своего аккаунта.
Чтобы заходить в
root шелл без пароля -
выполните
от имени
root
команду
'EDITOR=/Applications/TextEdit.app/Contents/MacOS/TextEdit visudo',
добавьте в конец файла строку
'%staff ALL=(ALL:ALL)
NOPASSWD:ALL', сохраните
его и закройте
редактор
. После этого можно заходить в
root шелл
без пароля
командой
sudo su
2. Установите утилиты разработки
Xcode. Перетащите
значок
Xcode с образа в каталог
/Applications. Затем выполните команду
clang в консоли и согласитесь на установку утилит командной
строки
3.
Установите программу для загрузки исходных кодов
Zandronum. Выполните команду из root шелла:
easy_install mercurial
4. Установите
CMake, для утилит командной строки
выберите путь /usr/local/bin
5. С
монтируйте
образ FMOD Ex. Выполните команды
из
root шелла
для установки библиотеки
:
mkdir -p /usr/local/{include,lib}
cp /Volumes/FMOD\
Programmers\ API\ Mac/FMOD\ Programmers\ API/api/inc/*
/usr/local/include/
cp /Volumes/FMOD\ Programmers\ API\ Mac/FMOD\
Programmers\ API/api/lib/* /usr/local/lib/
6. Подключите образ SDL. Скопируйте папку
SDL.Framework в
/Library/Frameworks
7. Установите библиотеку GLEW,
перейдя в каталог со скаченным архивом:
tar xzf glew-1.10.0.tgz && cd glew-1.10.0
make CFLAGS.EXTRA="-arch i386 -arch x86_64"
LDFLAGS.EXTRA="-arch i386 -arch x86_64" GLEW_DEST=/usr/local
sudo make install GLEW_DEST=/usr/local
3. Получение исходного кода
1)
Чтобы скачать последний снапшот исходного кода,
откройте терминал и перейдите в нужный каталог.
Выполните команду:
Исходники скачаются в подкаталог 'gzsrc'.
2)
При желании вы можете скачать
стабильную
версию.
Перейдите на закладку "Tags",
найдите нужную версию и скачайте её в
виде bz2 архива.
Распакуйте архив в нужный каталог.
3)
Чтобы обновить имеющуюся копию исходников, выполните
команду:
4. Компиляция исходного кода
1) Откройте терминал и перейдите в каталог со скаченными исходниками
gzsrc.
2)
Создайте универсальную сборку порта. Для этого выполните команды:
mkdir release && cd release
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES=i386
-DFMOD_INCLUDE_DIR="/usr/local/include"
-DFMOD_LIBRARY="/usr/local/lib/libfmodex.dylib" ..
make
cd ..
3) Скопируйте необходимую динамическую библиотеку:
cp -f /usr/local/lib/libfmodex.dylib .
4) В текущем каталоге будут все необходимые для игры файлы:
gzdoomgzdoom.pk3
lights.pk3brightmaps.pk3libfmodex.dylibВыполните ./gzdoom чтобы
проверить работоспособность сборки.