Compiling fgsd under Linux may be a bit tricky, so here are some guidelines. First, the bad news : g++ v3.3.x is unable to compile fgsd correctly. It produces internal Compiler Errors, and although the problem was reported, it has been forgotten by the gcc developpers. Now the good news : either g++ 3.2 or 3.4 are able to produce a good fgsd binary, so both are suitable to compile the sources. There is a gotcha though : you can't mix libraries compiled with g++ 3.4 with libraries compiled with g++ 3.2/3.3, so if binary versions of a prerequisite library is used, it is likely compiled with g++ 3.3 because few distributions use 3.4 as the default compiler. In that case, compile fgsd with 3.2.
The prerequisite libraries are :
- plib,
- SimGear,
- CGAL,
- libjpeg,
- pnglib,
- giflib (optional),
- curl.
Build CGAL 3.1 and remember the value of CGAL_LIB_DIR. Part of it will be needed when configuring fgsd. For example, if CGAL_LIB_DIR is : /home/fred/CGAL-3.1/lib/i686_Linux-2.6.8-1-k7_g++-3.2-3.2.3
then fgsd will be configured like this :
./configure --with-cgal-platform=i686_Linux-2.6.8-1-k7_g++-3.2-3.2.3 --with-cgal=/home/fred/CGAL-3.1 CXX=g++-3.2
assuming CGAL was untarred in /home/fred/CGAL-3.1 ( beginning of CGAL_LIB_DIR before /lib/ ) and the computed platform is i686_Linux-2.6.8-1-k7_g++-3.2-3.2.3 ( last part of CGAL_LIB_DIR ). CXX=g++-3.2 means that g++ v3.2 is required and g++ alone is v3.3 ( at least for Debian, other distro may vary ).
For more info, consult the FGSD web site at http://fgsd.sourceforge.net/ or subscribe to the fgsd-devel mailing list
