User Tools

Site Tools


compile_instructions

This is an old revision of the document!


Compile Instructions

Introduction

Compiling wolfpack is not a hard task, but may be challenging for the first time. The following guidelines should help you accomplish just that.

Please read all of your platform's sections before starting. Any questions regarding this can be directed to our Support Forums at the main website.

Compile with: BSDLinuxMacOSWindows

Windows

Wolfpack requires Python and the Qt library. If you wish to use MySQL, you will also need to download MySQL. For detailled instructions see: Compiling with Windows

Linux

Requirements

Wolfpack requires Python 2.3.x and Trolltech's Qt 4.0.x. Please note that many Linux distributions split the forementioned software into several packages. You will need the “development” packages in additional to the “standard” ones, if that's the case in your specific distribution. Please refer to Distribution Specific Notes for details.

Wolfpack will also require MySQL libraries and headers (aka development package) if you want to use MySQL, otherwise, it will default to the SQLite shiped along with Wolfpack.

Make sure that the QTDIR and QMAKESPEC enviroment variables are properly set. QTDIR should point to your qt folder, that is, where $QTDIR/include, $QTDIR/lib and $QTDIR/bin/qmake can be found. QMAKESPEC is the platform + compiler identification, see qmake Documentation for details. The examples shown here will also assume that $QTDIR/bin is in your $PATH.

Generating Makefiles

Go to the folder containing wolfpack folders then do a chmod +x configure to fix the script permission. The configure script will try to locate the headers and libraries required in your system and pass them to qmake to generate a makefile. Some options can be enabled/disabled from arguments passed to configure, check configure –help for details on them.

chmod +x configure
./configure

If you don't have installed the Boost-packages or want them to link statically, you have to build the special boost-library:

cd ../boost
qmake
make

Debian GNU/Linux Client: (In the moment you have to add a path to your Python include files e.g. /usr/include/python2.4 manually)

Distribution Specific Notes

Debian

  • Recommended that you use at least Debian Etch
  • QT4 Packages: libqt4-core libqt4-dev
  • Python Packages: python2.3 python2.3-dev
    • Python 2.4 to 2.7 ist also acceptable
  • Boost: libboost-python1.33.1 libboost-python-dev
  • OpenAL Packages: lobopenal0 libopenal-dev (only required for the client)
  • Recommended Packages: python2.3-mysqldb python2.3-sqlite python2.3-xml libsqlite0 libsqlite0-dev sqlite sqlite-doc
  • MySQL Packages: libmysqlclient-dev libmysqlclient12 mysql-client mysql-common mysql-server

The $QTDIR environment variable must be set. You can add the line export QTDIR=/usr/share/qt4 to your .bashrc file.

You don't need to add $QTDIR/bin to your path. The QT-programs are all in /usr/bin. But make sure, you configured the alternatives if you have installed both QT3 and QT4:

update-alternatives --config lrelease
update-alternatives --config lupdate
update-alternatives --config moc
update-alternatives --config qmake
update-alternatives --config uic

MacOS X

This is actually in testing

  • Install Python 2.7.6
  • Install QT 5.2.1
  • Install Command line tools for Xcode
  • Open Terminal, shange to directory of your choice e.g. your home directory /Users/<username>
  • Set QTDIR environment variable
    vi ~/.bashrc
    export QTDIR=/users/<username>/Qt5.2.1/5.2.1/clang_64/
    source ~/.bash_profile
  • Set Xcode path: sudo xcode-select -switch /
  • Make working directory
    mkdir wpdev
    cd wpdev
  • Get current Sourcecode:
    svn checkout svn://...
  • Configure
    cd trunk/server/build
    ./configure.py

First Blocker: configure2.py calls qmake:

  • /usr/bin/xcrun -find xcrun does not terminate
  • First Test for Resolution: Install complete Xcode 5.1

Second BLocker:

  • Linking error: clang: error: no such file or directory: 'Python.framework/Versions/2.7/Python'
  • Perhaps this is a conflict between different Python versions?

To be continued…

compile_instructions.1406014584.txt.gz · Last modified: 2014/07/22 09:36 by thooge