Building GG

Requirements

GG requires GCC 3.4 or later, or MSVC++ 8.0 SP1 or later. Note that both are available for free download.

GG relies on a few other open-source libraries:

Optional libraries for input drivers:

GG's documentation relies on Doxygen (http://www.stack.nl/~dimitri/doxygen). In the GG/doc directory, run Doxygen; the documentation will appear in the GG/doc/html directory.

How To Build GG

All Platforms

You will need to have first built the buildable portions of the boost libraries. See http://boost.org/more/getting_started/index.html for details on building boost. There are usually pre-built binaries available for download for the latest Microsoft C++ compiler.

Linux

To build GG, you will need to have SCons installed. These libraries and all the boost includes should be available in your path. You will of course also need to build and make available all of the libraries listed in the requirements above.

Once this is done, Linux, Cygwin, and MinGW users can simply type

      scons
      scons install [as root, if necessary]
from within the root of the GG directory tree. Type
      scons -h
to see all the options for the build, including specifying nonstandard locations for libraries required by GG, which may be especially useful on Cygwin/MinGW systems.

Windows (GCC)

GG works quite well with GCC on Windows, under MinGW or Cygwin, using SCons. See the SCons documentation for how to force SCons to use Cygwin or MinGW on the Windows platform (this will probably only be necessary if you also have the MSVC compiler), then refer to the Linux section above. Also note that the DLLs for all the required libraries except the boost libraries can be found on the net pre-compiled. You can just use the ones for win32/MSVC; since they're all C code, there will be no ABI compatibility issues. You must compile the boost libraries yourself, since they are C++ code.

Windows (Microsoft C++)

For those of you who use the Microsoft compiler, SCons will also work from the command line. You need to install SCons and Python, and make sure that python is in your path. There is also a standalone version of SCons available somewhere on the SCons site. Then you just open up a command prompt window, cd to the root of the GG directory tree, and type scons. I have only been able to get the current version of GG to compile on MSVC++ 8.0 SP1, the version that comes with .NET 2005.

There is experimental support for generated MSVC project files. To enable this, you can uncomment the large block of commented-out lines at the end of SConstruct and near the top of build_support.py (all the lines starting with "##"). After this, assuming you are using a recent-enough version of SCons, scons --help should give you all the instructions you need ot generate MSVC project files. Note that you can get precompiled MSVC-compatible DLLs for many of the required libraries. DevIL's 1.6.5 pre-compiled library can be substituted for the latest one, if there is no pre-compiled version available.

Finally, note that the solution file is set up to grab all include and library directories rooted at c:\, not just the boost ones. If you'd like to keep them somewhere else, you'll need to change the project settings.

Macintosh

It would be nice to have access to a Mac OS X and/or Classic Mac box, to be able to ensure that GG even compiles on such a thing. Let me know if you have or are interested in testing out a Mac build, or even taking on porting duties.
Generated on Wed Mar 26 14:35:42 2008 for GG by  doxygen 1.5.2