|This page is still incomplete, you are likely to be eaten by a grue.|
|This page has information on compiling the LÖVE source code. This is only necessary if you want to make modifications or additions to the framework itself. If you just want to code a game in Lua, go back to Getting Started.|
Still interested? Okay. Follow these three steps and you'll have your very own LÖVE binary:
1. Getting the source
The official repository of LÖVE is hosted on bitbucket.
You can download the source code either by downloading an archive from one of the tags on the download page or by installing mercurial and cloning the repository. Many linux distributions have a mercurial package in their repositories. Windows and OS X users can get the official binary from selenic.
To create a clone with mercurial open a terminal or command prompt, go to the directory that you want to download the source code folder to and use the following commands:
This will create a love folder and download the latest source code into it.
If you want to use the source code of a specific version, go into the love directory and issue one of the following commands:
hg update 0.7.2
hg update minor # the minor branch, where development is done for the next 0.x.0 version when there's still a 0.y.z version to be released.
hg update default # back to the standard, the next release.
hg update tip # to the last commit, regardless of branch.
LÖVE uses several open source libraries such as Lua, DevIL for images, and libvorbis for audio. Those libraries and their development files are required to successfully build LÖVE. It's possible to build every dependency yourself, but this is out of the scope of this page. The following explains how you can get prebuilt binaries instead.
Mac OS X
The required pre-built frameworks are available here. Place the frameworks in
/Library/Frameworks/ in order for LÖVE's Xcode project to recognize them.
Download the development packages of the dependencies from the repository of your distribution.
These are taken from the
platform/unix/debian/control.in file in the repository.
For the 0.9.0 branch, older versions of Ubuntu need the latest libsdl2-dev packages, which can be found via this ppa: https://launchpad.net/~bartbes/+archive/love-stable
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)
Please note that libmpg123-devel is in the rpmfusion-free repository.
Install the following packages (using aptitude or apt):
Afterwards, just build it like it is mentioned below, but passing the
--with-lua=lua option to
If you want or need to use LuaJIT, you will need to either backport the Debian packaged from Jessie, or build it from the upstream source.
Make sure you have autotools installed (which should normally be the case):
Any other distribution will most likely have the dependencies in their repositories too, possibly with slightly different package names.
Follow the instructions at the megasource repository page to build LÖVE 0.9.0+.
Be sure to keep the required DLLs in the same folder as love.exe when running the executable.
Mac OS X
love.xcodeproj file with Xcode and press 'build', or use the
xcodebuild command-line utility.
Use the automagic script to generate the configure file and then run configure and make as usual.
Your LÖVE binary will end up in the src directory.