Compile

From FreeOrionWiki
Jump to: navigation, search

Currently, FreeOrion will compile in most recent Windows, Linux, and MacOSX. The *BSD genus of operating systems might also work; follow the Linux instructions in this case.

Contents

Overview

First of all, you will need to obtain the source. This can be grabbed from our project page or from Subversion (SVN). The versions available on the project page are official releases or point releases, and may be somewhat or very out of date. To help with programming FreeOrion, you will need to grab the SVN copy. Then you need to set up the required software, compile the game, download the missing artwork, and run it.


Hardware requirements

The FreeOrion code makes heavy use of templates, and requires much memory to compile; 4 GB or more RAM is recommended.

On Linux, shutting down your X server and compiling from console may help on systems with little RAM. (If this doesn't mean anything to you, simply ignore this advice.)

You will also need a fast processor. To build GG and FreeOrion, expect up to 45 minutes of a Core i5 system, or over an hour on a Core2 Duo system; on a Core i7 system it can be under 10 minutes.

Note that, while not required to compile FreeOrion, running the FreeOrion client requires a graphics card and drivers that support OpenGL 2.0.

Software requirements

Note: On Windows and OSX, most dependencies are available pre-compiled in the FreeOrion SDK.

  • GiGi - Including GiGiOgre and the GiGiOgre OIS plugin. The code for these is included in the FreeOrion SVN repository, but they must be built as separate libraries.
  • Boost - version 1.50 or later.
  • Ogre 3D - Various versions after 1.6.1 may work. 1.7.3 and 1.8 work.
  • Bullet - version 2.73 or later. 2.77 works.
  • FreeType2 - a GiGi dependency. version 2.4.3 is known to work.
  • Python - version 2.7 or later (version 2.x only; 3.x will not work)
  • OpenAL
  • libogg - version 1.1.3 or later 1.2.1 is known to work.
  • libvorbis - version 1.1.2 or later 1.3.2 is known to work.
  • GLEW - (Windows only) version 1.5.7 is known to work.
  • zlib - version 1.2.5 is known to work with libpng 1.4.4
  • libpng - versions 1.2 and 1.4 work

Getting the source

Subversion

The source code can be obtained from the sourceforge Subversion server, using this command from the Linux command prompt (assuming you have previously installed subversion):

svn co https://svn.code.sf.net/p/freeorion/code/trunk freeorion 

which will install the code to the directory "./FreeOrion/freeorion" To avoid that extra layer of directory structure the code can be installed directly to "./freeorion" with the command:

svn co https://svn.code.sf.net/p/freeorion/code/trunk/FreeOrion freeorion 


For Windows, a graphical shell-extension SVN client, such as TortoiseSVN is recommended, with which the source can be obtained from https://freeorion.svn.sourceforge.net/svnroot/freeorion/trunk or by just updating the FreeOrion code directory present in the SDK. If you have the SDK and TortoiseSVN installed, right click on the FreeOrion directory in the SDK directory, and pick "Update" in the submenu (at the top). If you don't have "Update" but just have "SVN Upgrade Working Copy", do that first, and then update.

FreeOrion SDK

Alternatively, you can download the FreeOrion SDK (Windows and MacOSX) and update that directory tree with SVN.

Tarballs

The SourceForge Subversion web-client allows one to download numbered versions of the source code as a tarball.

The latest version can be obtained from the Download Snapshot link at the top of this page: http://sourceforge.net/p/freeorion/code/HEAD/tree/trunk/

You can also download source versions corresponding to previous releases:

FreeOrion v0.4.4

FreeOrion v0.4.3

FreeOrion v0.4.2

FreeOrion v0.4.1

FreeOrion v0.4

FreeOrion v0.3.17

FreeOrion v0.3.16

FreeOrion v0.3.15

FreeOrion v0.3.14

FreeOrion v0.3.13

FreeOrion v0.3.12.1 for Linux

FreeOrion v0.3.12 for Windows

FreeOrion v0.3.11

FreeOrion v0.3.10

Compilation

Compilation instructions and troubleshooting tips are available for the following operating systems: