BuildingOnMac.wiki
author vittorio.giovara@gmail.com
Wed, 02 Feb 2011 08:13:23 +0000
changeset 88 460d92a9be10
parent 34 bb98d418d1e3
child 91 8fe945760f91
permissions -rw-r--r--
utf8-string dependency was missing

#summary Instructions for building Hedgewars on Mac OS X
#labels Phase-Deploy

= Prerequisites =

  * XCode must be installed
  * some knowledge of Terminal is preferred

== Necessary Libraries ==

Download the following libraries and place them under `/Library/Frameworks/`

  * SDL - http://www.libsdl.org/release/SDL-1.2.14.dmg
  * SDL_image - http://www.libsdl.org/projects/SDL_image/release/SDL_image-1.2.10.dmg
  * SDL_mixer - http://www.libsdl.org/projects/SDL_mixer/release/SDL_mixer-1.2.11.dmg
  * SDL_net - http://dl.dropbox.com/u/24468/SDL_net.framework.zip
  * SDL_ttf - http://www.libsdl.org/projects/SDL_ttf/release/SDL_ttf-2.0.10.dmg
  * Ogg sources - http://downloads.xiph.org/releases/ogg/libogg-1.2.1.tar.bz2
  * Vorbis sources - http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.2.tar.bz2

=== Compiling Ogg Vorbis ===

Since there is no framework distribution for ogg vorbis libraries, we will need to compile our own. Extract the sources and open the relative .xcodeproj file.

It is likely that you will need to adjust some parameters, such as the Base SDK you have installed and for which architecture (ppc, i386, x86_64) you want to build. After that build as usual and copy the generated framework to the usual `/Library/Frameworks/` directory.

=== (Optional) Server ===

If you want to compile server for hosting lan games, you need to download an Haskell compiler. We are going to use the Glasgow Haskell Compiler.

  * download the Haskell Platform and install both the GHC and Haskell Platform - http://lambda.galois.com/hp-tmp/2010.2.0.0/haskell-platform-2010.2.0.0.i386.dmg
  * run `cabal update` to get an updated list of available libraries and install the necessary dependencies with
{{{
sudo cabal install dataenc hslogger network-bytestring utf8-string
}}}
  * then in the following cmake comand, remember to add `-DWITH_SERVER=1` or `-DBUNDLE`

== Necessary Tools ==

Download and install the following toolchains

  * Freepascal compiler - http://sourceforge.net/projects/freepascal/files/Mac%20OS%20X/2.4.0/fpc-2.4.0.intel-macosx.dmg/download
  * CMake - http://www.cmake.org/files/v2.8/cmake-2.8.3-Darwin-universal.dmg
  * QT - http://download.qt.nokia.com/qtsdk/qt-sdk-mac-opensource-2010.05.dmg
  * note that for compiling the 64 bit version you need download the cocoa version of QT

= Building process =

  * download the source tarball or clone the hg repo
  * configure the sources with the following line
{{{
cmake . -DQT_QMAKE_EXECUTABLE=/usr/bin/qmake -DCMAKE_BUILD_TYPE=Release
}}}
  * (optional) if you want to build a relocatable bundle, that is a bundle you can copy on your friend's mac or distribute it, add `-DBUNDLE` to the above command line
  * (note) if you specify `-DBUNDLE` you'll need to install GHC as well
  * run `make` and `make install`

Enjoy!