I managed to compile GiGi thx to the patch, but now I have another problem that make me think I must be a little bit of a noob... I miss files in the CVS source to compile FreeOrion :
./autogen.sh
HINT: If this script fails, try './update-configure.sh'
** Creating configure and friends
+ aclocal -I m4
aclocal: `configure.ac' or `configure.in' is required
+ autoconf
autoconf: no input file
+ autoheader
autoheader: `configure.ac' or `configure.in' is required
+ ./create_commonfilesinc.pl
./autogen.sh: line 9: ./create_commonfilesinc.pl: Aucun fichier ou répertoire de ce type
+ automake -a --foreign
automake: `configure.ac' or `configure.in' is required
+ set +x
** Unable to generate all required files!
** you'll need autoconf 2.5, automake 1.7, libtool 1.5, autoheader and aclocal installed
** If you don't have access to these tools, you can use the
** update-configure.sh script which will download the generated files,
** just remember to call it from time to time, it will only download
** if some files have been changed
As I already said, you need to make changes to FO too, but there is no sense in telling you which, as the resulting binary will segfault once you try to go to the planet view.
For now, try to revert to boost version 1.32 and recompile GG.
sebschub@satux ~/freeorion/FreeOrionCompile $ scons
scons: Reading SConscript files ...
Configuring for POSIX system...
Checking for pkg-config... ok
Checking for GiGiSDL >= 0.6.0... ok
Checking for log4cpp >= 0.3.4b... failed
Checking log4cpp version == 0.3.4b... yes
Checking for C++ header file log4cpp/Category.hh... yes
Checking for log4cpp::Category::getRoot() in C++ library log4cpp... yes
Checking for fmod >= 3.74... failed
Checking fmod version >= 3.74... yes
Checking for C header file fmod.h... yes
Checking for FSOUND_GetVersion() in C library fmod-3.74... yes
Checking for graphviz >= 0.15.0... failed
Checking for C header file graphviz/render.h... yes
Checking for begin_component() in C library dotgen... no
I am quite sure that I installed everything that is needed. I think it is strange that it can't find files and then later it can.
What can I do?
thx
sebschub@satux ~/freeorion/FreeOrionCompile $ scons configure with_graphviz_libdir=/usr/lib/graphviz
scons: Reading SConscript files ...
Configuring for POSIX system...
Checking for pkg-config... ok
Checking for GiGiSDL >= 0.6.0... ok
Checking for log4cpp >= 0.3.4b... failed
Checking log4cpp version == 0.3.4b... yes
Checking for C++ header file log4cpp/Category.hh... yes
Checking for log4cpp::Category::getRoot() in C++ library log4cpp... yes
Checking for fmod >= 3.74... failed
Checking fmod version >= 3.74... yes
Checking for C header file fmod.h... yes
Checking for FSOUND_GetVersion() in C library fmod-3.74... yes
Checking for graphviz >= 0.15.0... failed
Checking for C header file graphviz/render.h... yes
Checking for begin_component() in C library dotgen... yes
Configuration successful... yes
sebschub@satux ~/freeorion/FreeOrionCompile $ scons
scons: Reading SConscript files ...
Using previous successful configuration; if you want to re-run the configuration step, run "scons configure".
scons: done reading SConscript files.
scons: Building targets ...
g++ -pthread -Wall -O2 -DFREEORION_LINUX -DENABLE_BINRELOC -I/var/tmp/portage/gigi-0.6.0/image/usr/include/GG/SDL -I/var/tmp/portage/gigi-0.6.0/image/usr/include/GG/net -I/usr/include/SDL -I/var/tmp/portage/gigi-0.6.0/image/usr/include/GG -I/var/tmp/portage/gigi-0.6.0/image/usr/include/GG/dialogs -c -o combat/Combat.o combat/Combat.cpp
In file included from combat/Combat.cpp:3:
combat/../util/MultiplayerCommon.h:5:19: GGClr.h: No such file or directory
combat/../util/MultiplayerCommon.h:6:20: XMLDoc.h: No such file or directory
In file included from combat/Combat.cpp:3:
combat/../util/MultiplayerCommon.h:11: error: `Clr' is not a member of `GG'
combat/../util/MultiplayerCommon.h:11: error: `Clr' is not a member of `GG'
combat/../util/MultiplayerCommon.h:11: error: template argument 1 is invalid
combat/../util/MultiplayerCommon.h:11: error: template argument 2 is invalid
combat/../util/MultiplayerCommon.h:11: error: ISO C++ forbids declaration of `EmpireColors' with no type
combat/../util/MultiplayerCommon.h:14: error: expected unqualified-id before '&' token
combat/../util/MultiplayerCommon.h:14: error: expected `,' or `...' before '&' token
combat/../util/MultiplayerCommon.h:14: error: ISO C++ forbids declaration of `parameter' with no type
combat/../util/MultiplayerCommon.h:17: error: expected constructor, destructor, or type conversion before "XMLToClr"
combat/../util/MultiplayerCommon.h:17: error: expected `,' or `;' before "XMLToClr"
combat/../util/MultiplayerCommon.h:27: error: expected init-declarator before '<' token
combat/../util/MultiplayerCommon.h:27: error: expected `,' or `;' before '<' token
combat/../util/MultiplayerCommon.h:81: error: using-declaration for non-member at class scope
combat/../util/MultiplayerCommon.h:81: error: expected `;' before "color"
combat/../util/MultiplayerCommon.h:97: error: using-declaration for non-member at class scope
combat/../util/MultiplayerCommon.h:97: error: expected `;' before "empire_color"
combat/Combat.cpp:4:20: XMLDoc.h: No such file or directory
combat/Combat.cpp: In constructor `CombatUpdateMessage::EmpireCombatInfo::EmpireCombatInfo(const GG::XMLElement&)':
combat/Combat.cpp:28: error: invalid use of undefined type `const struct GG::XMLElement'
combat/Combat.h:12: error: forward declaration of `const struct GG::XMLElement'
combat/Combat.cpp:29: error: `boost' has not been declared
combat/Combat.cpp:29: error: `lexical_cast' undeclared (first use this function)
combat/Combat.cpp:29: error: (Each undeclared identifier is reported only once for each function it appears in.)
combat/Combat.cpp:29: error: expected primary-expression before "int"
combat/Combat.cpp:30: error: `boost' has not been declared
combat/Combat.cpp:30: error: expected primary-expression before "int"
combat/Combat.cpp:31: error: `boost' has not been declared
combat/Combat.cpp:31: error: expected primary-expression before "int"
combat/Combat.cpp:32: error: `boost' has not been declared
combat/Combat.cpp:32: error: expected primary-expression before "int"
combat/Combat.cpp:33: error: `boost' has not been declared
combat/Combat.cpp:33: error: expected primary-expression before "int"
combat/Combat.cpp:34: error: `boost' has not been declared
combat/Combat.cpp:34: error: expected primary-expression before "int"
combat/Combat.cpp:35: error: `boost' has not been declared
combat/Combat.cpp:35: error: expected primary-expression before "int"
combat/Combat.cpp:36: error: `boost' has not been declared
combat/Combat.cpp:36: error: expected primary-expression before "int"
combat/Combat.cpp:37: error: `boost' has not been declared
combat/Combat.cpp:37: error: expected primary-expression before "int"
combat/Combat.cpp:38: error: `boost' has not been declared
combat/Combat.cpp:38: error: expected primary-expression before "int"
combat/Combat.cpp:39: error: `boost' has not been declared
combat/Combat.cpp:39: error: expected primary-expression before "int"
combat/Combat.cpp:40: error: `boost' has not been declared
combat/Combat.cpp:40: error: expected primary-expression before "int"
combat/Combat.cpp: In member function `GG::XMLElement CombatUpdateMessage::EmpireCombatInfo::XMLEncode() const':
combat/Combat.cpp:44: error: return type `struct GG::XMLElement' is incomplete
combat/Combat.cpp:45: error: variable `GG::XMLElement e' has initializer but incomplete type
combat/Combat.cpp:47: error: invalid use of undefined type `struct GG::XMLElement'
combat/Combat.h:12: error: forward declaration of `struct GG::XMLElement'
combat/Combat.cpp:48: error: `boost' has not been declared
combat/Combat.cpp:48: error: `lexical_cast' undeclared (first use this function)
combat/Combat.cpp:48: error: invalid use of undefined type `struct GG::XMLElement'
combat/Combat.h:12: error: forward declaration of `struct GG::XMLElement'
combat/Combat.cpp:48: error: expected primary-expression before '(' token
combat/Combat.cpp:48: error: expected primary-expression before '>' token
combat/Combat.cpp:49: error: `boost' has not been declared
combat/Combat.cpp:49: error: invalid use of undefined type `struct GG::XMLElement'
[... and so on ...]
combat/Combat.cpp:61: confused by earlier errors, bailing out
scons: *** [combat/Combat.o] Error 1
scons: building terminated because of errors.
Is it a problem of my gigi installation. I did it with a gentoo ebild found in gentoo bugzilla.
thx
EDIT:
My installed packages:
fmod-3.74
boost-1.32.0-r4
devil-1.6.7-r1
gigi-0.6.0
libsdl-1.2.8-r1
sdl-net-1.2.5
The ebuild posted in gentoo bugzilla installs GG in /usr not /usr/local as scons expects. Manually change the path in scons build file, as the last time I checked there was no autodetection.
MareviQ wrote:The ebuild posted in gentoo bugzilla installs GG in /usr not /usr/local as scons expects. Manually change the path in scons build file, as the last time I checked there was no autodetection.
I have a MSDN Academic Alliance copy of MS Visual Studio, so I'm wondering it it's better to use the MSVC build system or SCons. Can I get some advice?
I do have some experience with programming, etc, but everything I've done to date has been on Solaris at uni; I've never attempted a "real project" under Windows before. I don't have a Linux install at home so I can't just go with the familiar system at this stage.