User Tools

Site Tools


compile_instructions

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
compile_instructions [2014/03/21 14:43]
thooge [MacOS X]
compile_instructions [2016/12/25 16:03] (current)
thooge [Distribution Specific Notes]
Line 6: Line 6:
  
 Please read all of your platform's sections before starting. Any questions regarding this can be directed to our Support Forums at the [[http://www.hoogi.de/wolfpack/|main website]]. Please read all of your platform's sections before starting. Any questions regarding this can be directed to our Support Forums at the [[http://www.hoogi.de/wolfpack/|main website]].
 +
 +Compile with: 
 +[[compile_bsd|BSD]] --
 +[[compile_linux|Linux]] --
 +[[compile_macos|MacOS]] -- 
 +[[compile_windows|Windows]]
  
 ===== Windows ===== ===== Windows =====
  
-==== Requirements ==== +Wolfpack requires Python and the Qt library
-Wolfpack requires Python 2.4.x or Python 2.6.x and Nokia'Qt 4.1.x or later (4.6.1 is recommended) +If you wish to use MySQL, you will also need to download MySQL. 
- +For detailled instructions see[[compile_windows|Compiling with Windows]]
-If you wish to use MySQL, you will also need to download MySQL itself before compiling, since it comes with header files and libraries required to activate MySQL support on Wolfpack. +
- +
-Make sure that the QTDIR enviroment variables is properly set. +
-QTDIR should point to your qt folder, that is, where $QTDIR/include, $QTDIR/lib and $QTDIR/bin/qmake can be found. +
- +
-The examples shown here will also assume that $QTDIR/bin is in your $PATH. +
- +
-=== Installing Qt === +
- +
-For compiling Qt yourself please follow up the specific instructions from Trolltech. Otherwise just download Qt SDK (LPGL) and install it. Don't forget to set the paths mentioned above.  +
- +
-==== Generating Makefiles ==== +
-Go to the folder containing wolfpack folders. Inside the build folder you should find the configure script (configure2.py) 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 configure2.py --help for details on them. To run the script, call it with configure2.py. Eventually you might have to specify the full Python path ( usually c:\Python24 ), in case that folder isn't in your PATH environment variable  +
-  C:\Python24\python configure.py  +
-Now change to the path ../boost and do mingw32-make. After compiling change back to ../build and compile Wolfpack server by typing mingw32-make. That's it. +
- +
-PS: You can also run make, nmake or mingw-make depending on your compiler. We recommend mingw32-make as it comes with Qt. +
- +
-==== Compiler Specific Notes ==== +
- +
-Unfortunally, different compilers have some sligtly differences in make's name, or requires additional steps. +
- +
-=== MinGW === +
-Python doesn't come with the import library file for linking with MingW, so you will have to generate it before running the configure script.  +
- +
-To do so, you will need to download pexports.exe ( pexports 0.42h ). Extract it somewhere in your PATH, as a suggestion, use MingW's bin folder ( usually c:\mingw\bin ). Locate python24.dll, usually it's in c:\winnt\system32 or c:\windows\system32. Go to c:\Python24\libs ( or the equivalent to your installation ) and run pexports c:\WINNT\system32\python24.dll > python24.def to build a list of exported functions, then dlltool --dllname python24.dll --def python24.def --output-lib libpython24.a to build the import library file we need.  +
-  cd \Python24\libs +
-  pexports c:\WINNT\system32\python24.dll > python24.def +
-  dlltool --dllname python24.dll --def python24.def --output-lib libpython24.a +
-If you want to enable MySQL support, you will have to take similar steps to build an import library to mysql. +
  
 ===== Linux ===== ===== Linux =====
  
 ==== Requirements ==== ==== Requirements ====
-Wolfpack requires Python 2.3.x and Trolltech'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 requires Python 2.x and Trolltech'QT 4.x. Please note that many Linux distributions split the forementioned software into several packages. tou 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. 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.
Line 56: Line 32:
  
 ==== Generating Makefiles ==== ==== 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. +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 +  ./configure2.py
-  ./configure+
  
 If you don't have installed the Boost-packages or want them to link statically, you have to build the special boost-library:  If you don't have installed the Boost-packages or want them to link statically, you have to build the special boost-library: 
Line 67: Line 42:
   make   make
  
-Debian GNU/Linux [[Client]]: (In the moment you have to add a path to your Python include files e.g. /usr/include/python2.manually)+Debian GNU/Linux [[Client]]: (In the moment you have to add a path to your Python include files e.g. /usr/include/python2.manually) 
 + 
 +Finally 
 +  make 
 +  make install
  
 ==== Distribution Specific Notes ==== ==== Distribution Specific Notes ====
Line 73: Line 52:
 === Debian === === Debian ===
  
-  * Recommended that you use at least Debian Etch  +  * Recommended that you use at least Debian 8.x Jessie 
-    * In Debian Sarge the supplied QT Version is only 3.3.4 +  * QT4 Packages: ''libqt4-core libqt4-dev'' 
-    * for more information see: http://www.debian.org/releases/  +  * Python Packages: ''python2.python2.7-dev'' 
-  * QT4 Packages: libqt4-core libqt4-dev +  * Boost: ''libboost-python1.55.libboost-python-dev'' 
-  * Python Packages: python2.python2.3-dev +  * OpenAL Packages: ''lobopenal1 libopenal-dev'' (only required for the client) 
-    * Python 2.4 to 2.7 ist also acceptable  +  * Recommended Packages: ''python2.7-mysqldb python2.7-sqlite python2.7-xml libsqlite0 libsqlite0-dev sqlite sqlite-doc'' 
-  * Boost: libboost-python1.33.libboost-python-dev +  * MySQL Packages: ''libmysqlclient-dev libmysqlclient18 mysql-client mysql-common mysql-server'' 
-  * OpenAL Packages: lobopenal0 libopenal-dev (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 +
  
-You don't need to add $QTDIR/bin to your pathThe QT-programs are all in /usr/binBut make sure, you configured the alternatives if you have installed both QT3 and QT4: +The ''$QTDIR'' environment variable must be setYou can add the line ''export QTDIR=/usr/share/qt4'' 
 +to your ''.bashrc'' file.
  
-  update-alternatives --configure lrelease +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 --configure lupdate + 
-  update-alternatives --configure moc +  update-alternatives --config lrelease 
-  update-alternatives --configure qmake +  update-alternatives --config lupdate 
-  update-alternatives --configure uic+  update-alternatives --config moc 
 +  update-alternatives --config qmake 
 +  update-alternatives --config uic
  
 ===== MacOS X ===== ===== MacOS X =====
  
-This is actually in testing +see [[compile_macos]]
-  * Install Python 2.7.6 +
-  * Install QT 5.2.1 +
-  * Install Command line tools for Xcode  +
-    * Download at https://developer.apple.com/downloads, requires a AppleID +
-  * Open Terminal, shange to directory of your choice e.g. your home directory ''/Users/<username>'' +
-  * Set QTDIR environment variable \\ <code>vi ~/.bashrc +
-export QTDIR=/users/<username>/Qt5.2.1/5.2.1/clang_64/ +
-</code> +
-  * Set Xcode path: ''sudo xcode-select -switch /'' +
-  * Make working directory \\ <code>mkdir wpdev +
-cd wpdev +
-</code> +
-  * Get current Sourcecode: <code>svn checkout svn://...</code> +
-  * Configure \\ <code>cd trunk/server/build +
-./configure.py +
-</code> +
-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''' +
- +
- +
-QTDIR setzen +
-  vim ~/.bash_profile +
-  export QTDIR=/Users/administrator/Qt5.2.1/5.2.1/clang_64 +
-  source ~/.bash_profile +
  
compile_instructions.1395409408.txt.gz · Last modified: 2014/03/21 14:43 by thooge