Windows | Linux | OSX |
---|---|---|
Oolite can be heavily customized via expansions. These modify the gameplay, add ships, improve graphics - the possibilities are almost endless:
Oolite for all platforms can be built from this repository. Here is a quick guide to the source tree.
For end-user documentation, see oolite.space and Elite Wiki.
You will need the latest version of Xcode from the App Store. Then double click on the Xcode project in the Finder, select one of the Oolite targets from the Scheme pop-up, and hit Build and Run (the play button in the toolbar).
See the Oolite wiki: http://wiki.alioth.net/index.php/Running_Oolite-Windows
If you have the Debian package tools (installed by default with Debian and Ubuntu), use dpkg-buildpackage.
On Linux, BSD and other Unix platforms without dpkg tools, you will need to get GNUstep and SDL development libraries in addition to what is usually installed by default if you choose to install the development headers/libraries etc. when initially installing the OS. For most Linux distros, GNUstep and SDL development libraries come prepackaged - just apt-get/yum install the relevant files. You may also need to install Mozilla Spidermonkey (libmozjs). On others you may need to build them from source.
dnf install espeak-devel openal-soft-devel libpng-devel SDL_image-devel gcc-objc nspr-devel sdl12-compat-devel SDL2-devel gnustep-base-devel gnustep-make
apt -y install git gobjc gnustep-devel make libsdl1.2-dev libvorbis-dev libopenal-dev g++ libespeak-dev libnspr4-dev
cp .absolute_gitmodules .gitmodules
git submodule update --init
git checkout -- .gitmodules
This will just compile the project:
source /usr/lib64/GNUstep/Makefiles/GNUstep.sh
# might also be somewhere else like "/usr/share/GNUstep/Makefiles/GNUstep.sh"
make -f Makefile release -j$(nproc)
This will just compile the project and package an installer:
source /usr/lib64/GNUstep/Makefiles/GNUstep.sh
# might also be somewhere else like "/usr/share/GNUstep/Makefiles/GNUstep.sh"
make -f Makefile pkg-posix-nightly HOST_ARCH=$(uname -m)
In case you built the installer, it is located in the "installers/posix/" folder named something like "oolite-trunk-1.91.0.d87b089-dev.linux-x86_64.run"
If you can't see any textures, try deleting the following files, and compile again.
rm deps/Linux-deps/include/png.h
rm deps/Linux-deps/include/pngconf.h
On Fedora: If you get errors like gcc: fatal error: environment variable ‘RPM_ARCH’ not defined
, try the following workaround before compiling:
export RPM_ARCH=bla
export RPM_PACKAGE_RELEASE=bla
export RPM_PACKAGE_VERSION=bla
export RPM_PACKAGE_NAME=bla
If you get errors like fatal error: jsapi.h: No such file or directory
, you probably forgot to first fetch all the git submodules
If you get compiler errors, you can try compiling with:
make -f Makefile release OBJCFLAGS="-fobjc-exceptions -Wno-format-security" -j$(nproc)
On OS X, you can run from Xcode by clicking on the appropriate icon
(or choosing 'Run' from the 'Product' menu).
On Linux/BSD/Unix, in a terminal, type openapp oolite
, or if you compiled it yourself you can run it with ./oolite.app/oolite
.
The Oolite source is available from github.
Use git clone https://github.com/OoliteProject/oolite
to retrieve. Then git submodule update --init
to fetch the various submodules.
If you've cloned the source from a forked repository instead, this may not work - due to relative directory paths in .gitmodules, git tries to download the submodules from the fork instead of the original oolite repository. A workaround is to copy the file .absolute_gitmodules onto .gitmodules, then perform the submodules init, then replace .gitmodules with the relative path version. eg, on Unix:
$ cp .absolute_gitmodules .gitmodules
$ git submodule update --init
$ git checkout -- .gitmodules
You should now have access to the submodules, without git complaining that .gitmodules has changed or including .gitmodules in pull requests.