Achetar
March 21st, 2008, 10:20 AM
Okay. I have downloaded the latest version of freeorion from CVS and attempted to compile it. GiGi compiles fine. But freeorion fails to compile with the following errors:
Empire/Empire.o: In function `Empire':
/home/fixer/Projects/freeorion/FreeOrion/Empire/Empire.cpp:620: undefined reference to `GG::Clr::Clr()'
/home/fixer/Projects/freeorion/FreeOrion/Empire/Empire.cpp:620: undefined reference to `GG::Clr::Clr()'
network/Message.o: In function `construct<boost::archive::xml_iarchive, GG::Clr>':
/usr/include/boost/serialization/access.hpp:123: undefined reference to `GG::Clr::Clr()'
network/Message.o: In function `NebulaData':
/home/fixer/Projects/freeorion/FreeOrion/network/../util/MultiplayerCommon.h:92: undefined reference to `GG::Pt::Pt()'
universe/ParserUtil.o: In function `operator()<unsigned int, unsigned int, unsigned int, unsigned int>':
/usr/include/boost/spirit/phoenix/casts.hpp:498: undefined reference to `GG::Clr::Clr(unsigned char, unsigned char, unsigned char, unsigned char)'
universe/Tech.o: In function `TechCategory':
/home/fixer/Projects/freeorion/FreeOrion/universe/Tech.cpp:300: undefined reference to `GG::CLR_WHITE'
/home/fixer/Projects/freeorion/FreeOrion/universe/Tech.cpp:300: undefined reference to `GG::CLR_WHITE'
universe/Tech.o: In function `tuple':
/usr/include/boost/spirit/phoenix/tuples.hpp:703: undefined reference to `GG::Clr::Clr()'
universe/TopLevelParsers.o: In function `tuple':
/usr/include/boost/spirit/phoenix/tuples.hpp:746: undefined reference to `GG::Clr::Clr()'
util/MultiplayerCommon.o: In function `PlayerSetupData':
/home/fixer/Projects/freeorion/FreeOrion/util/MultiplayerCommon.cpp:215: undefined reference to `GG::CLR_GRAY'
/home/fixer/Projects/freeorion/FreeOrion/util/MultiplayerCommon.cpp:215: undefined reference to `GG::CLR_GRAY'
util/MultiplayerCommon.o: In function `SaveGameEmpireData':
/home/fixer/Projects/freeorion/FreeOrion/util/MultiplayerCommon.cpp:204: undefined reference to `GG::Clr::Clr()'
/home/fixer/Projects/freeorion/FreeOrion/util/MultiplayerCommon.cpp:204: undefined reference to `GG::Clr::Clr()'
util/MultiplayerCommon.o: In function `SinglePlayerSetupData':
/home/fixer/Projects/freeorion/FreeOrion/util/MultiplayerCommon.cpp:196: undefined reference to `GG::Clr::Clr()'
/home/fixer/Projects/freeorion/FreeOrion/util/MultiplayerCommon.cpp:196: undefined reference to `GG::Clr::Clr()'
util/MultiplayerCommon.o: In function `XMLToClr(XMLElement const&)':
/home/fixer/Projects/freeorion/FreeOrion/util/MultiplayerCommon.cpp:90: undefined reference to `GG::Clr::Clr()'
server/SaveLoad-server.o: In function `SaveGameUIData':
/home/fixer/Projects/freeorion/FreeOrion/server/../universe/../util/MultiplayerCommon.h:90: undefined reference to `GG::Pt::Pt()'
server/ServerFSM-server.o: In function `SaveGameUIData':
/home/fixer/Projects/freeorion/FreeOrion/server/../universe/../util/MultiplayerCommon.h:90: undefined reference to `GG::Pt::Pt()'
universe/Universe-server.o: In function `Universe::GenerateEmpires(int, std::vector<int, std::allocator<int> >&, std::map<int, PlayerSetupData, std::less<int>, std::allocator<std::pair<int const, PlayerSetupData> > > const&)':
/home/fixer/Projects/freeorion/FreeOrion/universe/Universe.cpp:2775: undefined reference to `GG::Clr::Clr()'
/home/fixer/Projects/freeorion/FreeOrion/universe/Universe.cpp:2788: undefined reference to `GG::FloatClr(float, float, float, float)'
universe/Universe-server.o: In function `__gnu_cxx::__normal_iterator<GG::Clr*, std::vector<GG::Clr, std::allocator<GG::Clr> > > std::__find<__gnu_cxx::__normal_iterator<GG::Clr*, std::vector<GG::Clr, std::allocator<GG::Clr> > >, GG::Clr>(__gnu_cxx::__normal_iterator<GG::Clr*, std::vector<GG::Clr, std::allocator<GG::Clr> > >, __gnu_cxx::__normal_iterator<GG::Clr*, std::vector<GG::Clr, std::allocator<GG::Clr> > >, GG::Clr const&, std::random_access_iterator_tag)':
/usr/include/c++/4.2/bits/stl_algo.h:212: undefined reference to `GG::operator==(GG::Clr const&, GG::Clr const&)'
/usr/include/c++/4.2/bits/stl_algo.h:216: undefined reference to `GG::operator==(GG::Clr const&, GG::Clr const&)'
/usr/include/c++/4.2/bits/stl_algo.h:220: undefined reference to `GG::operator==(GG::Clr const&, GG::Clr const&)'
/usr/include/c++/4.2/bits/stl_algo.h:208: undefined reference to `GG::operator==(GG::Clr const&, GG::Clr const&)'
/usr/include/c++/4.2/bits/stl_algo.h:228: undefined reference to `GG::operator==(GG::Clr const&, GG::Clr const&)'
universe/Universe-server.o:/usr/include/c++/4.2/bits/stl_algo.h:232: more undefined references to `GG::operator==(GG::Clr const&, GG::Clr const&)' follow
collect2: ld returned 1 exit status
scons: *** [freeoriond] Error 1
scons: building terminated because of errors.
Any ideas? Do I need to add the GiGI libraries to scons or g++?
Empire/Empire.o: In function `Empire':
/home/fixer/Projects/freeorion/FreeOrion/Empire/Empire.cpp:620: undefined reference to `GG::Clr::Clr()'
/home/fixer/Projects/freeorion/FreeOrion/Empire/Empire.cpp:620: undefined reference to `GG::Clr::Clr()'
network/Message.o: In function `construct<boost::archive::xml_iarchive, GG::Clr>':
/usr/include/boost/serialization/access.hpp:123: undefined reference to `GG::Clr::Clr()'
network/Message.o: In function `NebulaData':
/home/fixer/Projects/freeorion/FreeOrion/network/../util/MultiplayerCommon.h:92: undefined reference to `GG::Pt::Pt()'
universe/ParserUtil.o: In function `operator()<unsigned int, unsigned int, unsigned int, unsigned int>':
/usr/include/boost/spirit/phoenix/casts.hpp:498: undefined reference to `GG::Clr::Clr(unsigned char, unsigned char, unsigned char, unsigned char)'
universe/Tech.o: In function `TechCategory':
/home/fixer/Projects/freeorion/FreeOrion/universe/Tech.cpp:300: undefined reference to `GG::CLR_WHITE'
/home/fixer/Projects/freeorion/FreeOrion/universe/Tech.cpp:300: undefined reference to `GG::CLR_WHITE'
universe/Tech.o: In function `tuple':
/usr/include/boost/spirit/phoenix/tuples.hpp:703: undefined reference to `GG::Clr::Clr()'
universe/TopLevelParsers.o: In function `tuple':
/usr/include/boost/spirit/phoenix/tuples.hpp:746: undefined reference to `GG::Clr::Clr()'
util/MultiplayerCommon.o: In function `PlayerSetupData':
/home/fixer/Projects/freeorion/FreeOrion/util/MultiplayerCommon.cpp:215: undefined reference to `GG::CLR_GRAY'
/home/fixer/Projects/freeorion/FreeOrion/util/MultiplayerCommon.cpp:215: undefined reference to `GG::CLR_GRAY'
util/MultiplayerCommon.o: In function `SaveGameEmpireData':
/home/fixer/Projects/freeorion/FreeOrion/util/MultiplayerCommon.cpp:204: undefined reference to `GG::Clr::Clr()'
/home/fixer/Projects/freeorion/FreeOrion/util/MultiplayerCommon.cpp:204: undefined reference to `GG::Clr::Clr()'
util/MultiplayerCommon.o: In function `SinglePlayerSetupData':
/home/fixer/Projects/freeorion/FreeOrion/util/MultiplayerCommon.cpp:196: undefined reference to `GG::Clr::Clr()'
/home/fixer/Projects/freeorion/FreeOrion/util/MultiplayerCommon.cpp:196: undefined reference to `GG::Clr::Clr()'
util/MultiplayerCommon.o: In function `XMLToClr(XMLElement const&)':
/home/fixer/Projects/freeorion/FreeOrion/util/MultiplayerCommon.cpp:90: undefined reference to `GG::Clr::Clr()'
server/SaveLoad-server.o: In function `SaveGameUIData':
/home/fixer/Projects/freeorion/FreeOrion/server/../universe/../util/MultiplayerCommon.h:90: undefined reference to `GG::Pt::Pt()'
server/ServerFSM-server.o: In function `SaveGameUIData':
/home/fixer/Projects/freeorion/FreeOrion/server/../universe/../util/MultiplayerCommon.h:90: undefined reference to `GG::Pt::Pt()'
universe/Universe-server.o: In function `Universe::GenerateEmpires(int, std::vector<int, std::allocator<int> >&, std::map<int, PlayerSetupData, std::less<int>, std::allocator<std::pair<int const, PlayerSetupData> > > const&)':
/home/fixer/Projects/freeorion/FreeOrion/universe/Universe.cpp:2775: undefined reference to `GG::Clr::Clr()'
/home/fixer/Projects/freeorion/FreeOrion/universe/Universe.cpp:2788: undefined reference to `GG::FloatClr(float, float, float, float)'
universe/Universe-server.o: In function `__gnu_cxx::__normal_iterator<GG::Clr*, std::vector<GG::Clr, std::allocator<GG::Clr> > > std::__find<__gnu_cxx::__normal_iterator<GG::Clr*, std::vector<GG::Clr, std::allocator<GG::Clr> > >, GG::Clr>(__gnu_cxx::__normal_iterator<GG::Clr*, std::vector<GG::Clr, std::allocator<GG::Clr> > >, __gnu_cxx::__normal_iterator<GG::Clr*, std::vector<GG::Clr, std::allocator<GG::Clr> > >, GG::Clr const&, std::random_access_iterator_tag)':
/usr/include/c++/4.2/bits/stl_algo.h:212: undefined reference to `GG::operator==(GG::Clr const&, GG::Clr const&)'
/usr/include/c++/4.2/bits/stl_algo.h:216: undefined reference to `GG::operator==(GG::Clr const&, GG::Clr const&)'
/usr/include/c++/4.2/bits/stl_algo.h:220: undefined reference to `GG::operator==(GG::Clr const&, GG::Clr const&)'
/usr/include/c++/4.2/bits/stl_algo.h:208: undefined reference to `GG::operator==(GG::Clr const&, GG::Clr const&)'
/usr/include/c++/4.2/bits/stl_algo.h:228: undefined reference to `GG::operator==(GG::Clr const&, GG::Clr const&)'
universe/Universe-server.o:/usr/include/c++/4.2/bits/stl_algo.h:232: more undefined references to `GG::operator==(GG::Clr const&, GG::Clr const&)' follow
collect2: ld returned 1 exit status
scons: *** [freeoriond] Error 1
scons: building terminated because of errors.
Any ideas? Do I need to add the GiGI libraries to scons or g++?