http://www.CodeBlocks.org - Free open source cross platform IDE, supporting multiple differentcompiler backends
Using the free CodeBlocks IDE to compile FlightGear and its dependencies is probably be one of the easiest ways for Windows users (and non-developers) to benefit from the latest bleeding edge CVS version of FlightGear. This document will detail the steps that are required to compile FlightGear from source under Win32 by using gcc (non-cygwin).
1. download the complete IDE, including the mingw-gcc compiler, approx. 13 MB 2. install the downloaded file
Downloading the dependencies: PLIB OpenAL SIMGEAR
Downloading the FlightGear source code:
Using the CodeBlocks IDE and MingW32-GCC to build FlightGear under Win32 is relatively straight forward because CodeBlocks is able to import various different IDE project file formats into its own native format.
Among these supported project file formats is also the Microsoft VC++ DSP (projects) or DSW (workspaces) format, which is also used for Windows builds of FlightGear and can thus be found under $SG_SRC/ (root of SimGear source tree) and $FG_SRC/ (root of FlightGear source tree). Hence, there is hardly any manual work required, apart from telling CodeBlocks to import an existing project.
You will want to follow the following steps in order to get a working FlightGear version, built from source:
1) decide whether you want to compile a release version or a CVS version.
Depending on whether you want to build FlightGear based on a release or on a CVS version, the ways to obtain the source code differ, because you will usually either want to download a tarball (compressed archive) of the source code or alternatively check out a particular version of FlightGear's CVS version by using a CVS client (command line or GUI client).
RELEASE: in order to compile FlightGear release code from source you will want to get the dependencies that are required for this very FlightGear version, these dependencies are usually laid out at www.FlightGear.org for each release.
TODO: add links
CVS: in order to compile the latest FlightGear CVS it is usually required to also make sure that FlightGear's dependencies are not only up to date but often also from CVS/HEAD. However, if you want to compile and older CVS version, you will also want to make sure that this version's dependencies are met, which may require to downgrade libraries.
TODO: add links, add links to CVS instructions
FlightGear currently has the following external dependencies:
The latest release source code for each dependency is available via: TODO: links
The latest CVS source code for each dependency is available via: TODO: links
Preparing the source code for compilation: - replace relative paths (../)
Preparing the project for compilation - add linker flags (library search paths and libraries) - remove imported HAVE_CONFIG_H definition from project file (BUILD OPTIONS)
to be continued ...
Either as tarball or from CVS