Mac Development Guide

From FreeSpace Wiki
Revision as of 07:03, 16 November 2013 by Echelon9 (talk | contribs) (Clean up comments referable to very old versions of OS X and Xcode only)
Jump to: navigation, search

This page provides background and instructions to setup the Xcode development environment in order to compile FreeSpace 2 Open SCP. After following these instructions you will have a working Xcode build environment, a checked out copy of the latest FS2_Open source code, and compiled binaries of the latest revision of the FS2_Open engine.

Xcode icon.png

Getting Xcode

Xcode is the integrated development environment (IDE) that Apple provides free of charge for the Mac OS platform. It is the Mac equivalent to Microsoft Visual Studio. In practice, Xcode provides a graphical interface to an underlying Clang/LLVM compiler; with the addition of platform libraries (Frameworks), code completion, project management and the other features you would expect of a modern IDE.

Xcode is available free from the Mac App Store.

It is strongly recommended that you update to the latest version of Xcode compatible with your Mac OS version, as prior versions have bugs which prevent FS2_Open from compiling properly.

Known working combinations
OS X 10.9 OS X 10.8.5 OS X 10.7 OS X 10.6.8
Xcode 5.0.2 Yes Yes n/a n/a
Xcode 4.2.1 n/a n/a Partially Not as yet
Xcode 3.2.6 n/a n/a Yes Yes
Xcode 3.1.4 n/a n/a n/a No
Xcode 3.0.0 n/a n/a n/a Unknown


Getting the FreeSpace 2 Open SCP source code

Open Terminal.app through Spotlight, or it can be found in /Applications/Utilities/Terminal.app. This is the console command line for Mac OS. You will need a location to save the checked out source code. The following commands will create a new folder in your personal Documents called 'coding' and then within a subfolder specific for FS2_Open called 'fs2_open' checkout the latest Subversion revision.

cd Documents
mkdir coding
cd coding
svn checkout svn://svn.icculus.org/fs2open/trunk/fs2_open fs2_open


Open Finder and browse to ~/Documents/coding/fs2_open/ to see the new files that have been downloaded from the FS2_Open Subversion source code repository.

FS2_Open currently uses some precompiled third party Frameworks to handle music and video on Mac OS, which are stored in compressed form within Subversion. Open the 'projects' folder and then 'Xcode4'. This is the location of recent Xcode specific project files and settings. For now, double click on Frameworks.tgz to uncompress these Frameworks to a new folder called Frameworks.

Your local SVN checkout of the FreeSpace 2 Open SCP code can be keep up to date with the latest changes by opening Terminal.app again, and running the following commands

cd Documents/coding/fs2_open
svn up

Xcode and the FreeSpace 2 Open SCP source code is now setup, so let's start our first compilation by double clicking on the FS2_Open.xcodeproj Xcode project file.

Compiling the FreeSpace 2 Open SCP source code

Note: The exact process is dependent on the version of Xcode, but the general approach is the same
Xcode 3.2.2 as it appears after opening the FS2_Open Xcode project file

To compile a FS2_Open build without making any changes is straightforward. In the top left of Xcode 3.2.2 you will see a dropdown box with text similar to "10.4 | [Build Type] | FS2_Open | ppc". You can select the type of build with the [Build Type] section.

Once picked, click the 'Build' button. For the first time, this will take some time (dependent upon the speed of your hardware). This should complete successfully, and once done the binary application can be found within 'projects/Xcode/build/'. Open the folder with the same name as the build type you selected previously to find the compiled FS2_Open application.