Собираем Zandronum 2.0 самостоятельно под Mac OS X
В этой статье я расскажу как скомпилировать Zandronum под Apple Mac OS X с нуля. Для написания статьи будут использоваться виртуальные машины с чистыми, но настроенными MacOS 10.6.8 и 10.7.5 (retail версия с последними обновлениями) с 32-битным ядром и 4 Гб оперативной памяти и 2 процессорными ядрами (с этой задачей идеально справляется VMware Workstation 10 с патчем-анлокером), а также машина PowerMac G5 с MacOS 10.5.8 и 8 Гб памяти. Фрэймворк разработки для MacOS 10.6 позволяет создавать программы, способные выполняться на 3 разных архитектурах процессоров: ppc, i386 и x86_64. Фрэймворк для MacOS 10.5 также поддерживает ppc64. Кроме того, создаваемые программы смогут выполняться на любой версии MacOS с 10.4 по 10.8 включительно. Фрэймворк для MacOS 10.7 компилирует под i386 и x86_64, полученные программы могут выполняться на MacOS с 10.6 по 10.8. У этих версий MacOS есть два ядра - i386 и x86_64; чтобы узнать какое в данный момент у вас загружено - выполните команду 'arch' в терминале (создайте ссылку на "Терминал" в Dock - мы будем часто им пользоваться; приложение находится по адресу /Applications/Utilities/Terminal.app).
Разделим процесс на 4 этапа:
1) Скачивание необходимых сред разработки, утилит и библиотек
2) Конфигурирование среды сборки, установка библиотек
3) Получение исходного кода
4) Компиляция исходного кода
При повторной сборке переходите сразу к п. 3.
1. Файлы для скачивания1. Для MacOS 10.5: Apple Xcode 3.1.4 - Авторизуйтесь своим Apple ID, введите в поиске "Xcode 3.1.4" и скачайте .dmg образ (размер 993 Мб).
Для MacOS 10.6: Apple Xcode 3.2.6 - версия 3.2.x является последней с поддержкой MacOS 10.4 таргетирования и ppc архитектуры. Авторизуйтесь своим Apple ID, введите в поиске "Xcode 3.2.6" и скачайте .dmg образ (размер 4.14 Гб).
Для
MacOS 10.7:
Apple Xcode 4.2.1 (размер 1.68 Гб) - более новые версии не
поддерживаются
2.
FMOD Ex
Programmers API 4.26.36 - эта проприетарная библиотека
ограничивает выбор платформ, под которые можно скомпилировать программу. Со
списком поддерживаемых разными версиями платформ можно ознакомиться
здесь.
Текущая версия Zandronum поддерживает
только FMOD 4.24 поэтому мы будем собирать только
под i386 и ppc.
3.
CMake 2.8.10.2 - программа для конфигурации
сборки исходного кода под вашу систему.
Более новые версии не поддерживаются
4. Для MacOS 10.5
и 10.6:
SDL 1.2.15
i386/ppc/x86_64
- мультимедийная библиотека.
Для MacOS 10.7: SDL 1.2.15 i386/x86_64
5. Только для MacOS
10.5:
Mercurial 2.0.2
6.
Zandronum
PPC patch - патч исправляющий компиляцию под ppc
архитектуру.
7. GLEW 1.10.0 - OpenGL библиотека
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=/usr/bin/gcc-4.0 -DCMAKE_CXX_COMPILER=/usr/bin/g++-4.0 -DCMAKE_OSX_SYSROOT=/Developer/SDKs/MacOSX10.4u.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=10.4 -DCMAKE_OSX_ARCHITECTURES=i386 -DFMOD_LIBRARY="/Developer/FMOD Programmers API Mac/api/lib/libfmodex.dylib" ..
make
cd ..
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_SYSROOT=/Developer/SDKs/MacOSX10.6.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=10.6 -DCMAKE_OSX_ARCHITECTURES=i386 -DFMOD_LIBRARY="/Developer/FMOD Programmers API Mac/api/lib/libfmodex.dylib" ..
make
cd ..
patch -p0 < zandronum-v1-ppc.patch
mkdir release_ppc && cd release_ppc
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=/usr/bin/gcc-4.0 -DCMAKE_CXX_COMPILER=/usr/bin/g++-4.0 -DCMAKE_OSX_SYSROOT=/Developer/SDKs/MacOSX10.4u.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=10.4 -DCMAKE_OSX_ARCHITECTURES="ppc750;ppc7400;ppc7450;ppc970" -DFMOD_LIBRARY="/Developer/FMOD Programmers API Mac/api/lib/libfmodex.dylib" ..
make
cd ..
lipo -create -output zandronum ../release_i386/zandronum ../release_ppc/zandronum
5) В текущей папке будут все необходимые для игры файлы:
Выполните ./zandronum чтобы проверить работоспособность сборки.