Running Oolite-Mac

From Elite Wiki
Revision as of 12:54, 21 July 2011 by Ahruman (talk | contribs) (Building earlier versions: Fixed horrible URL)

Overview

Oolite was originally developed for OS X, and as such, OS X is Oolite's home operating system. The OS X version can be considered the reference version for all other ports. It has some specific Mac OS X only support such as speech synthesis, iTunes integration and Growl integration. Joysticks are not directly supported - however, there are programs that convert joystick inputs into mouse and keyboard inputs, and these programs are reported to work well with Oolite.

Getting and installing the game

You can get the most recent release of the game from BerliOS.

Installation is the standard method of dragging the Oolite folder to your Applications or Games folder.

Installing OXPs (add ons)

In the Oolite folder that you dragged from the disk image, you will find an Oolite application and an AddOns folder. Place OXPs in the AddOns folder, and they will be loaded the next time you start the game.

Building Oolite from source

Development Environment (Xcode)

To start, you will need Mac OS X 10.5 or later and Xcode tools 3.2 or later from the Apple Developer Connection or your Mac OS install DVD. You will need an Apple Developer Connection membership to obtain download Xcode; however, the free online membership is sufficient. You can register here. You will also need to ensure you have installed the Mac OS X 10.4 Universal SDK, which is available through the Xcode Tools installer. Lastly, you will require the Subversion version control tool; an up-to-date binary is available here.

The Oolite projects have not been updated for Xcode 4, and won’t be (in trunk) before the next stable release.

Getting the Source

The source code and data files are available from the oolite-linux BerliOS project. Don't be confused by the name 'oolite-linux'; at one point there were three separate repositories for Oolite, but the Linux one was where they ended up being merged together. The SVN url for 1.65 is:

svn://svn.berlios.de/oolite-linux/tags/v165-final

1.74.2 is:

svn://svn.berlios.de/oolite-linux/tags/1.74.2

You can also get the latest work-in-progress from:

svn://svn.berlios.de/oolite-linux/trunk

To download the source with Subversion, the quickest way to do it is to open a Terminal window, and run the following command:

svn checkout svn://svn.berlios.de/oolite-linux/trunk

If you have a BerliOS account and are a project member, you can get it with:

svn checkout svn+ssh://accountname@svn.berlios.de/svnroot/repos/oolite-linux/trunk

Developers should also checkout the relevant maintenance branch:

svn checkout svn+ssh://accountname@svn.berlios.de/svnroot/repos/oolite-linux/branches/1.74-maintenance/

Building Oolite

Oolite must be built using Xcode 3.2; Xcode 4 is not supported. Multiple versions of Xcode can be installed side-by-side, but installing Xcode 3.2.6 on OS X Lion is currently problematic. See this forum post for more information.

For a trunk build (as of revision 4026), just open Oolite.xcodeproj and hit Build. Dependencies will be downloaded automatically (in the deps folder inside the Oolite repository). The default target is Build All, which includes the Debug OXP, joystick support and a dock tile plug-in. The last can only be built under Snow Leopard or later; to build under Leopard you must switch to the Oolite project, or remove the dependency on Oolite-docktile.

Building earlier versions

For 1.74.x and earlier versions, you must download the source release of libpng. This will decompress as a folder called “libpng-1.4.5” or similar. Rename it to “libpng” and move it to deps/Cross-platforms-deps in the Oolite repository. The trunk project now does this automatically. To build the “Build All” target, which includes the Debug OXP, you must install the RBSplitView Interface Builder plug-in. (To install it, simply put it somewhere tidy and open it; Interface Builder should load and register the plug-in.) Important: due to an unfortunate change between versions, you must use the 1.1.4 version of the RBSplitView IB plug-in, or use 1.2 but change its bundle identifier from net.brockerhoff.RBSplitView.IBPlugin to net.brockerhoff.RBsplitView.IBPlugin.

These steps do not need to be repeated after updating the repository using the svn update command.

Versions prior to r4584 (1.75.4) will not build under OS X Lion. To make them build, you will need to apply these changes and set the “Header Search Paths” setting of the Oolite target to $(SDKROOT)/usr/include/libkern/ for all configurations.

Build products

Building the Build All target (in trunk) will result in the following being created in the build results folder: AddOns, Debug.oxp, include (with subfolders js, ogg and vorbis), libjs_for_oolite.a, libnspr4_for_oolite.a, libogg_for_oolite.a, libpng_for_oolite.a, Oolite.app, Oolite Leopard Support.bundle, Oolite.mdimporter and Oolite.docktileplugin. AddOns contains a copy of Debug.oxp. Oolite.app contains a copy of Oolite Leopard Support.bundle, Oolite.mdimporter and Oolite.docktileplugin, and static libraries (.a files) are linked into the Oolite executable. Everything except Oolite.app and AddOns can be considered side effects of the build process.