Building LÖVE (Русский)

O.png Эта страница еще не закончена, и вы, скорее всего, будете съедены Гру.  


O.png Эта страница содержит информацию о компиляции исходного кода LÖVE. Это необходимо только, если вы хотите внести изменения или дополнения в сам фреймворк. Если вы просто хотите написать игру на Lua, возвращайтесь назад в Getting Started (Русский).  


Все еще заинтересованы? Замечательно. Выполните следующие три шага, и вы будете иметь свой собственный бинарный LÖVE:

  1. Получение исходного кода
  2. Зависимости
  3. Сборка

1. Получение исходного кода

Официальный репозиторий LÖVE размещается на bitbucket.

Вы можете загрузить исходный код либо скачать архив с одного из тегов на странице загрузки или путем установки Mercurial и клонирования репозитория. Многие дистрибутивы Linux уже имеют пакет Mercurial в своих репозиториях. Пользователи Windows и Mac OS X могут получить официальный бинарник с selenic.

Для клонирование при помощи mercurial откройте терминал или командную строку, перейдите в каталог, в который вы хотите загрузить папку с исходным кодом и выполните следующую команду:

hg clone https://bitbucket.org/rude/love

Эта команда создаст папку с LÖVE и скачает в нее последнюю версию исходного кода.

Если вы хотите использовать исходный код определенной версии, перейдите в каталог love и введите одину из следующих команд:

hg update 0.8.0		# любая (релиз) версия от 0.6.0 и выше.
hg update 0.7.2
hg update minor		# малая ветвь, где разработка завершена на следующих 0.x.0 версиях, есть еще a 0.y.z версии которые еще только будут выпущены.
hg update default	# возврат к стандартному, последнему релизу.
hg update tip		# к последнему коммиту, независимо от ветки.


2. Зависимости

LÖVE использует несколько библиотек с открытым исходным кодом, такие как Lua, DevIL для картинок, и libvorbis для аудио. Эти библиотеки и их файлы для разработки, необходимы для успешной сборки LÖVE. Можно построить каждую из зависимостей под себя, но это выходит за рамки данной страницы. Вместо этого ниже объясняется, как вы можете получить готовые бинарные файлы.

Windows

Зависимости и инструкции для LÖVE 0.9.0+ вы найдете сдесь.

Mac OS X

Уже собранный фреймворк доступен здесь. Поместите фреймворк сюда /Library/Frameworks/ для того, чтобы Xcode определил проект LÖVE.

Linux

Скачать пакеты разработчика зависимостей с репозитория вашего дистрибутива.

Ubuntu

sudo apt-get install build-essential autotools-dev automake libtool pkg-config libdevil-dev libfreetype6-dev libluajit-5.1-dev libphysfs-dev libsdl2-dev libopenal-dev libogg-dev libvorbis-dev libflac-dev libflac++-dev libmodplug-dev libmpg123-dev libmng-dev libturbojpeg

Они взяты из файла platform/unix/debian/control.in в репозитории.

Для ветки 0.9.0, для старых версий Ubuntu нужны актуальные пакеты libsdl2-dev, которые могут быть найдены с помощью этой рра: https://launchpad.net/~bartbes/+archive/love-stable

Если вы получили сообщение об ошибке во время сборки об libturbojpeg, необходимо сначала исправить эту ошибку в Ubuntu (команда ниже), затем снова запустите `configure`:

ln -s /usr/lib/x86_64-linux-gnu/libturbojpeg.so.0 /usr/lib/x86_64-linux-gnu/libturbojpeg.so

Arch Linux

pacman -S devil flac freetype2 glibc libmodplug libvorbis lua51 mesa mpg123 openal physfs sdl # 0.6.x
pacman -S devil freetype2 libmodplug libvorbis lua51 mpg123 openal physfs sdl # 0.7.x
pacman -S luajit physfs freetype2 devil mpg123 openal libvorbis libmodplug sdl2 shared-mime-info hicolor-icon-theme desktop-file-utils # for 0.9.x (taken from package in repository)

Fedora

yum install freetype-devel glibc-devel libmpg123-devel libmodplug-devel physfs-devel mesa-libGL-devel openal-soft-devel DevIL-devel libvorbis-devel SDL-devel libmng-devel libtiff-devel lua-devel gcc-c++ libtool

Пожалуйста, обратите внимание, что libmpg123-devel находится в репозитории rpmfusion-free.

Debian Wheezy

Установите следующие пакеты (используя aptitude или apt):

aptitude install build-essential automake libtool libphysfs-dev libsdl-dev libopenal-dev liblua5.1-0-dev libdevil-dev libmodplug-dev libfreetype6-dev libmpg123-dev libvorbis-dev libmng-dev libxpm-dev libxcursor-dev libXxf86vm-dev

Потом, просто соберите его, как это упомянуто ниже, но указывая опцию --with-lua=lua для ./configure.

Если вы хотите или должны использовать LuaJIT, вам нужно будет либо портироватся на Debian упакованный от Jessie, или собрать его поверх исходного кода.

Mageia 2

urpmi make automake autoconf libopenal-devel libtool libtool-base libphysfs-devel libSDL-devel lua liblua-devel libdevil-devel libmodplug-devel libfreetype6-devel libmpg123-devel libvorbis-devel libmng-devel libxpm-devel libxcursor-devel libxxf86vm-devel

Gentoo

emerge -va lua physfs libsdl opengl devil freetype openal libvorbis mpg123 libmodplug

Убедитесь, что у вас установлен autotools (который обычно имеет место быть):

emerge -va automake autoconf libtool

Другие дистрибутивы

Любые другие дистрибутивы, скорее всего, также имеют зависимости в их репозиториях, возможно, с немного отличающимися именами пакетов.

3. Сборка

Windows

Следуйте инструкциям на странице репозитория megasource для сборки LÖVE 0.9.0+.

Не забудьте сохранить необходимые DLL библиотеки в той же папке что и love.exe при запуске исполняемого файла.

Mac OS X

Откройте файл love.xcodeproj в Xcode и нажмите 'build', или воспользуйтесь утилитой командной строки xcodebuild.

Linux

Используйте скрипт automagic для генерации файла конфигурирования и затем как обычно выполните команду configure и make.

./platform/unix/automagic
./configure
make

Ваш бинарный LÖVE будет расположен в конечном итоге в директории с исходниками.

Другие языки