Difference between revisions of "Compile"

From FreeOrionWiki
Jump to: navigation, search
(Software requirements)
(Tarballs)
Line 49: Line 49:
  
 
You can also download source versions corresponding to previous releases:
 
You can also download source versions corresponding to previous releases:
 +
 +
==== FreeOrion v0.4 ====
 +
 +
* [https://sourceforge.net/projects/freeorion/files/FreeOrion/FreeOrion%20Version%200.4/ FreeOrion v0.4] is FreeOrion SVN revision 4635: '''http://freeorion.svn.sourceforge.net/viewvc/freeorion/trunk/?pathrev=4635''' with GiGi SVN revision 1074: '''http://gigi.svn.sourceforge.net/viewvc/gigi/trunk/?pathrev=1074'''
  
 
==== FreeOrion v0.3.17 ====
 
==== FreeOrion v0.3.17 ====

Revision as of 02:58, 8 February 2012

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.

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.

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 - Latest version from SourceForge SVN will automatically be included in the FreeOrion/GG directory when checking out the FreeOrion Subversion archive
  • Boost - version 1.47
  • Ogre 3D - version 1.6.1 or later. 1.7.3 is known to work.
  • Bullet - version 2.73 or later. 2.77 is known to work.
  • FreeType2 - a GiGi dependency. version 2.4.3 is known to work.
  • Python - version 2.5 or later (version 2.x only; 3.x will not work)
  • OpenAL and ALUT - freealut 1.1.0 is known to work.
  • 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:

svn co https://freeorion.svn.sourceforge.net/svnroot/freeorion/trunk 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.

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 GNU tarball link on the bottom of this page: http://freeorion.svn.sourceforge.net/viewvc/freeorion/trunk/FreeOrion/

You can also download source versions corresponding to previous releases:

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: