Compile In Windows

From FreeOrionWiki
Revision as of 13:06, 25 March 2018 by Adrian broher (Talk | contribs) (We use msvc2015, not msvc2013)

Jump to: navigation, search

Prerequisites

Compiler

FreeOrion can be compiled on Windows with Visual Studio 2015 Update 3. Premade Visual Studio project files are available in the source code repository, and the SDK provides precompiled dependencies for the compiler. Project files may also be generated using CMake.

Getting Visual Studio

Visual Studio Community and Express can be downloaded from Microsoft here. If you're not sure which edition to pick, take the latest one for Windows Desktop. You will need a Microsoft account to proceed, if you don't have one, you will have to register one.

Version Control System

The FreeOrion project uses Git for version control. To be able to use the SDK, you need to install the git command line client (the most recent release for Windows can be downloaded here). Important: When installing the git command line client, be sure to select the option that will include the git executable in your command path, otherwise the batch script which sets up the SDK will fail.

Compilation Instructions

Step by Step

  1. First, get the FreeOrion SDK for Windows from GitHub (for FreeOrion later than v0.4.6) or SourceForge (for FreeOrion v0.4.6 and earlier). (~50 or 35 MB)
  2. Unpack the SDK to a directory of your choice.
  3. Run the bootstrap.bat file located in the root folder of the unpacked SDK. This will (among other things) download and check out the source code from GitHub (freeorion/freeorion repository, checked out branch will be "master").
  4. Depending on which version of Visual Studio you're using, open FreeOrion\msvc2015\FreeOrion.sln
  5. Use Build->Build Solution to build all projects' release targets.

Compilation may take some time: ~1 hour on Core i3 370M with 6GB RAM, ~20 min on Core i7 4710HQ with 8 GB RAM.

Software Dependencies

The SDK includes compiled libraries, headers and DLLs for: zlib, Python 2, Boost, FreeType, GLEW, libpng, OpenAL, libvorbis, and libogg, SDL2.

Runtime Errors

Please report runtime errors in the forums.