compilation troubles

Questions, problems and discussion about compiling FreeOrion.

Moderator: Oberlus

Post Reply
Message
Author
micr
Space Krill
Posts: 5
Joined: Sat Jun 23, 2007 12:39 am

compilation troubles

#1 Post by micr »

Hello , I am trying to compile latest svn on ubuntu 7.04 and got some compilation error.
Help will be appreciated..
error:

Code: Select all

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++ -o Empire/Empire.o -c -pthread -g -O2 -Wall -DFREEORION_LINUX -DENABLE_BINRELOC -I/usr/include/SDL -I/usr/local/include -I/home/micr/apps/freeorion/fmodapi375linux/api/inc -I/usr/lib/graphviz -I/usr/include/graphviz Empire/Empire.cpp
Empire/../universe/Universe.h: In member function 'void Universe::serialize(Archive&, unsigned int)':
Empire/../universe/Universe.h:348: error: invalid use of undefined type 'struct Ship'
Empire/../universe/Predicates.h:9: error: forward declaration of 'struct Ship'
Empire/../universe/Universe.h:355: error: there are no arguments to 'Empires' that depend on a template parameter, so a declaration of 'Empires' must be available
Empire/../universe/Universe.h:355: error: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
Empire/../universe/Universe.h:356: error: incomplete type 'Empire' used in nested name specifier
Empire/../universe/Universe.h:356: error: expected `;' before 'it'
Empire/../universe/Universe.h:356: error: name lookup of 'it' changed for new ISO 'for' scoping
Empire/../universe/Universe.h:345: error:   using obsolete binding at 'it'
Empire/../universe/Universe.h:356: error: invalid use of undefined type 'struct Empire'
Empire/../universe/Universe.h:61: error: forward declaration of 'struct Empire'
Empire/../universe/Universe.h:357: error: no match for 'operator[]' in 'ship_designs[* it]'
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/bits/stl_map.h:340: note: candidates are: _Tp& std::map<_Key, _Tp, _Compare, _Alloc>::operator[](const _Key&) [with _Key = int, _Tp = ShipDesign*, _Compare = std::less<int>, _Alloc = std::allocator<std::pair<const int, ShipDesign*> >]
Empire/../universe/Universe.h:357: error: no match for 'operator[]' in '((Universe*)this)->Universe::m_ship_designs[* it]'
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/bits/stl_map.h:340: note: candidates are: _Tp& std::map<_Key, _Tp, _Compare, _Alloc>::operator[](const _Key&) [with _Key = int, _Tp = ShipDesign*, _Compare = std::less<int>, _Alloc = std::allocator<std::pair<const int, ShipDesign*> >]
scons: *** [Empire/Empire.o] Error 1
scons: building terminated because of errors.

config.log

Code: Select all

file /home/micr/apps/freeorion/FreeOrion/SConstruct,line 173:
        Configure(confdir = .sconf_temp)
scons: Configure: Checking for pkg-config... 
pkg-config --atleast-pkgconfig-version 0.15.0
scons: Configure: yes

scons: Configure: Checking for GiGiSDL >= 0.6.0... 
pkg-config GiGiSDL --atleast-version 0.6.0
scons: Configure: yes

scons: Configure: Checking for C++ header file boost/shared_ptr.hpp... 
.sconf_temp/conftest_2.cpp <-
  |
  |#include "boost/shared_ptr.hpp"
  |
  |
g++ -o .sconf_temp/conftest_2.o -c -pthread -I/usr/include/SDL -I/usr/local/include .sconf_temp/conftest_2.cpp
scons: Configure: yes

scons: Configure: Checking Boost version >= 1.33.1... 
scons: Configure: (cached) yes

scons: Configure: Checking for boost::archive::binary_iarchive::is_saving() in C++ library boost_serialization... 
.sconf_temp/conftest_3.cpp <-
  |
  |
  |#include "boost/archive/binary_iarchive.hpp"
  |
  |int
  |main() {
  |  boost::archive::binary_iarchive::is_saving();
  |return 0;
  |}
  |
g++ -o .sconf_temp/conftest_3.o -c -pthread -I/usr/include/SDL -I/usr/local/include .sconf_temp/conftest_3.cpp
g++ -o .sconf_temp/conftest_3 -pthread .sconf_temp/conftest_3.o -L/usr/local/lib -lGiGiSDL -lSDL -lGiGiNet -lIL -lILU -lILUT -lGiGi -lboost_signals -lboost_filesystem -lGL -lGLU -lfreetype -lz -lboost_serialization
scons: Configure: yes

scons: Configure: Checking for C++ library boost_iostreams... 
.sconf_temp/conftest_4.cpp <-
  |
  |
  |#include "boost/iostreams/filtering_stream.hpp"
  |
  |int
  |main() {
  |  
  |return 0;
  |}
  |
g++ -o .sconf_temp/conftest_4.o -c -pthread -I/usr/include/SDL -I/usr/local/include .sconf_temp/conftest_4.cpp
g++ -o .sconf_temp/conftest_4 -pthread .sconf_temp/conftest_4.o -L/usr/local/lib -lGiGiSDL -lSDL -lGiGiNet -lIL -lILU -lILUT -lGiGi -lboost_signals -lboost_filesystem -lGL -lGLU -lfreetype -lz -lboost_serialization -lboost_iostreams
scons: Configure: yes

scons: Configure: Boost configuration... 
scons: Configure: (cached) ok

scons: Configure: Checking for fmod >= 3.75... 
pkg-config fmod --atleast-version 3.75
scons: Configure: no

scons: Configure: Checking fmod version >= 3.75... 
scons: Configure: (cached) yes

scons: Configure: Checking for C header file fmod.h... 
.sconf_temp/conftest_6.c <-
  |
  |#include "fmod.h"
  |
  |
gcc -o .sconf_temp/conftest_6.o -c -pthread -I/usr/include/SDL -I/usr/local/include -I/home/micr/apps/freeorion/fmodapi375linux/api/inc .sconf_temp/conftest_6.c
scons: Configure: yes

scons: Configure: Checking for FSOUND_GetVersion() in C library fmod-3.75... 
.sconf_temp/conftest_7.c <-
  |
  |
  |#include <fmod.h>
  |int
  |main() {
  |  FSOUND_GetVersion();
  |return 0;
  |}
  |
gcc -o .sconf_temp/conftest_7.o -c -pthread -I/usr/include/SDL -I/usr/local/include -I/home/micr/apps/freeorion/fmodapi375linux/api/inc .sconf_temp/conftest_7.c
gcc -o .sconf_temp/conftest_7 -pthread .sconf_temp/conftest_7.o -L/usr/local/lib -L/home/micr/apps/freeorion/fmodapi375linux/api -lGiGiSDL -lSDL -lGiGiNet -lIL -lILU -lILUT -lGiGi -lboost_signals -lboost_filesystem -lGL -lGLU -lfreetype -lz -lboost_serialization -lboost_iostreams -lfmod-3.75
scons: Configure: yes

scons: Configure: Checking for libgraph >= 2.8... 
pkg-config libgraph --atleast-version 2.8
scons: Configure: yes

scons: Configure: Checking for libgvc >= 2.8... 
pkg-config libgvc --atleast-version 2.8
scons: Configure: yes

scons: Configure: Checking for log4cpp >= 0.3.4b... 
pkg-config log4cpp --atleast-version 0.3.4b
scons: Configure: yes

scons: Configure: Checking for C++ header file log4cpp/Category.hh... 
.sconf_temp/conftest_11.cpp <-
  |
  |#include "log4cpp/Category.hh"
  |
  |
g++ -o .sconf_temp/conftest_11.o -c -pthread -g -O2 -I/usr/include/SDL -I/usr/local/include -I/home/micr/apps/freeorion/fmodapi375linux/api/inc -I/usr/lib/graphviz -I/usr/include/graphviz .sconf_temp/conftest_11.cpp
scons: Configure: yes

scons: Configure: Checking for log4cpp::Category::getRoot() in C++ library log4cpp... 
.sconf_temp/conftest_12.cpp <-
  |
  |
  |#include "log4cpp/Category.hh"
  |
  |int
  |main() {
  |  log4cpp::Category::getRoot();
  |return 0;
  |}
  |
g++ -o .sconf_temp/conftest_12.o -c -pthread -g -O2 -I/usr/include/SDL -I/usr/local/include -I/home/micr/apps/freeorion/fmodapi375linux/api/inc -I/usr/lib/graphviz -I/usr/include/graphviz .sconf_temp/conftest_12.cpp
g++ -o .sconf_temp/conftest_12 -pthread .sconf_temp/conftest_12.o -L/usr/local/lib -L/home/micr/apps/freeorion/fmodapi375linux/api -L/usr/lib/graphviz -L/usr/lib/graphviz -lGiGiSDL -lSDL -lGiGiNet -lIL -lILU -lILUT -lGiGi -lboost_signals -lboost_filesystem -lGL -lGLU -lfreetype -lz -lboost_serialization -lboost_iostreams -lfmod-3.75 -lgraph -lcdt -lgvc -llog4cpp -lnsl -llog4cpp
scons: Configure: yes

scons: Configure: Configuration successful... 
scons: Configure: (cached) yes

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13603
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: compilation troubles

#2 Post by Geoff the Medio »

Looks like MSVC is yet again letting me do things I shouldn't...

Try adding this to Universe.h, right after the #include "Predicates.h" stuff:

Code: Select all

#ifndef _Ship_h_
#include "Ship.h"
#endif

#ifndef _EmpireManager_h_
#include "../Empire/EmpireManager.h"
#endif

#ifndef _Empire_h_
#include "../Empire/Empire.h"
#endif

micr
Space Krill
Posts: 5
Joined: Sat Jun 23, 2007 12:39 am

Re: compilation troubles

#3 Post by micr »

like that ?

Code: Select all

// -*- C++ -*-
#ifndef _Universe_h_
#define _Universe_h_

#ifndef BOOST_SERIALIZATION_SHARED_PTR_HPP
#include <boost/serialization/shared_ptr.hpp>
#endif

#ifndef BOOST_SIGNAL_HPP
#include <boost/signal.hpp>
#endif

#ifndef _Enums_h_
#include "Enums.h"
#endif

#ifndef _Predicates_h_
#include "Predicates.h"
#endif

#ifndef _Ship_h_
#include "Ship.h"
#endif

#ifndef _EmpireManager_h_
#include "../Empire/EmpireManager.h"
#endif

#ifndef _Empire_h_
#include "../Empire/Empire.h"
#endif
any way I still get similar error :

Code: Select all

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++ -o Empire/Empire.o -c -pthread -g -O2 -Wall -DFREEORION_LINUX -DENABLE_BINRELOC -I/usr/include/SDL -I/usr/local/include -I/usr/include/graphviz Empire/Empire.cpp
Empire/../universe/UniverseObject.h: In member function 'void UniverseObject::serialize(Archive&, unsigned int)':
Empire/../universe/UniverseObject.h:183: error: 'Universe' has not been declared
Empire/../universe/UniverseObject.h:189: error: 'Universe' has not been declared
Empire/../universe/UniverseObject.h:195: error: 'Universe' has not been declared
Empire/../universe/Universe.h: In member function 'void Universe::serialize(Archive&, unsigned int)':
Empire/../universe/Universe.h:367: error: there are no arguments to 'Empires' that depend on a template parameter, so a declaration of 'Empires' must be available
Empire/../universe/Universe.h:367: error: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
Empire/../universe/Universe.h:368: error: incomplete type 'Empire' used in nested name specifier
Empire/../universe/Universe.h:368: error: expected `;' before 'it'
Empire/../universe/Universe.h:368: error: name lookup of 'it' changed for new ISO 'for' scoping
Empire/../universe/Universe.h:357: error:   using obsolete binding at 'it'
Empire/../universe/Universe.h:368: error: invalid use of undefined type 'struct Empire'
Empire/../universe/../Empire/EmpireManager.h:15: error: forward declaration of 'struct Empire'
Empire/../universe/Universe.h:369: error: no match for 'operator[]' in 'ship_designs[* it]'
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/bits/stl_map.h:340: note: candidates are: _Tp& std::map<_Key, _Tp, _Compare, _Alloc>::operator[](const _Key&) [with _Key = int, _Tp = ShipDesign*, _Compare = std::less<int>, _Alloc = std::allocator<std::pair<const int, ShipDesign*> >]
Empire/../universe/Universe.h:369: error: no match for 'operator[]' in '((Universe*)this)->Universe::m_ship_designs[* it]'
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/bits/stl_map.h:340: note: candidates are: _Tp& std::map<_Key, _Tp, _Compare, _Alloc>::operator[](const _Key&) [with _Key = int, _Tp = ShipDesign*, _Compare = std::less<int>, _Alloc = std::allocator<std::pair<const int, ShipDesign*> >]
scons: *** [Empire/Empire.o] Error 1
scons: building terminated because of errors.

User avatar
loonycyborg
Compilation Expert
Posts: 219
Joined: Thu Jul 06, 2006 10:30 pm
Location: Russia/Moscow

Re: compilation troubles

#4 Post by loonycyborg »

I have the same compile errors as the poster above.
Somehow contents of UniverseObject.h are before contents of Universe.h in preprocessor output.
Geoff the Medio wrote:

Code: Select all

#ifndef _Ship_h_
#include "Ship.h"
#endif

#ifndef _EmpireManager_h_
#include "../Empire/EmpireManager.h"
#endif

#ifndef _Empire_h_
#include "../Empire/Empire.h"
#endif
Why do you use this instead of plain

Code: Select all

#include "Ship.h"
#include "../Empire/EmpireManager.h"
#include "../Empire/Empire.h"
:?:
In Soviet Russia, forum posts YOU!!

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13603
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: compilation troubles

#5 Post by Geoff the Medio »

loonycyborg wrote:Why do you use this instead of plain

Code: Select all

#include "Ship.h"
#include "../Empire/EmpireManager.h"
#include "../Empire/Empire.h"
:?:
The existing code mixes in-header #ifndef's and around-the-include #ifndef's inconsistently. I figured there might be a reason for this, and I try to avoid changing things I don't understand too much when it comes to the preprocessor, since it so often acts seemingly randomly...

Anyway, does the version without the extra include guards work for you guys?

I have no idea why it would work for me without those includes, since those classes do need to be defined in Universe.h.

After adding the above includes though, the compiler started choking while compiling ResourcePool.cpp, saying that in Empire.h, ResourcePool and PopulationPool weren't defined, despite Empire.h including ResourcePool.h, where they are defined. After fighting with it for a few hours, and eventually removing some unnecessary includes from ResourcePool.h (in particular, Universe.h and UniverseObject.h), and now it seems to compile and link without problem. This doesn't mean that it's correct though, as seen above... so could you check with this patch?

Code: Select all

Index: Empire/Empire.h
===================================================================
--- Empire/Empire.h	(revision 2077)
+++ Empire/Empire.h	(working copy)
@@ -5,6 +5,7 @@
 #include <GG/Clr.h>
 #include "../util/SitRepEntry.h"
 #include "../universe/Tech.h"
+#include "../universe/UniverseObject.h"
 #include "ResourcePool.h"
 
 #include <deque>
@@ -13,6 +14,7 @@
 
 class BuildingType;
 class ShipDesign;
+class Empire;
 
 struct ResearchQueue
 {
Index: Empire/ResourcePool.h
===================================================================
--- Empire/ResourcePool.h	(revision 2077)
+++ Empire/ResourcePool.h	(working copy)
@@ -3,9 +3,12 @@
 #define _ResourcePool_h_
 
 #include "../universe/Enums.h"
-#include "../universe/Universe.h"
-#include "../universe/UniverseObject.h"
 
+#include <boost/signal.hpp>
+#include <boost/serialization/nvp.hpp>
+
+#include <vector>
+
 class ResourceCenter;
 class PopCenter;
 
Index: universe/Universe.h
===================================================================
--- universe/Universe.h	(revision 2077)
+++ universe/Universe.h	(working copy)
@@ -10,13 +10,11 @@
 #include <boost/signal.hpp>
 #endif
 
-#ifndef _Enums_h_
 #include "Enums.h"
-#endif
-
-#ifndef _Predicates_h_
 #include "Predicates.h"
-#endif
+#include "Ship.h"
+#include "../Empire/EmpireManager.h"
+#include "../Empire/Empire.h"
 
 #if defined(_MSC_VER)
   // HACK! this keeps VC 7.x from barfing when it sees "typedef __int64 int64_t;"

User avatar
loonycyborg
Compilation Expert
Posts: 219
Joined: Thu Jul 06, 2006 10:30 pm
Location: Russia/Moscow

Re: compilation troubles

#6 Post by loonycyborg »

Nope. Compile errors remain, now they are about UniverseObject not being declared.
This mysterious preprocessor behavior can be attributed to circular #includes:
UniverseObject.h #includes Universe.h, but Universe.h #includes Ship.h which in turn #includes UniverseObject.h . This contradiction proves that Universe does not exist :lol:
In Soviet Russia, forum posts YOU!!

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13603
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: compilation troubles

#7 Post by Geoff the Medio »

loonycyborg wrote:...UniverseObject not being declared...
OK, try adding

class UniverseObject;

to the forward declarations in Universe.h (line 63 in SVN 2081).

micr
Space Krill
Posts: 5
Joined: Sat Jun 23, 2007 12:39 am

Re: compilation troubles

#8 Post by micr »

after i upadeted svn to new revision i got :

Code: Select all

scons: Building targets ...
g++ -o Empire/Empire.o -c -pthread -g -O2 -Wall -DFREEORION_LINUX -DENABLE_BINRELOC -I/usr/include/SDL -I/usr/local/include -I/usr/include/graphviz Empire/Empire.cpp
In file included from Empire/../universe/UniverseObject.h:5,
                 from Empire/Empire.h:8,
                 from Empire/Empire.cpp:1:
Empire/../universe/Universe.h:449:2: error: #endif without #if
In file included from Empire/Empire.cpp:12:
Empire/../universe/Universe.h:449:2: error: #endif without #if
Empire/../universe/Universe.h:15: error: expected unqualified-id before '<<' token
Empire/../universe/InhibitableSignal.h:42: error: 'GG::Connect' declared as an 'inline' variable
Empire/../universe/InhibitableSignal.h:42: error: template declaration of 'boost::signals::connection GG::Connect'
Empire/../universe/InhibitableSignal.h:42: error: 'InhibitableSignal' was not declared in this scope
after that there is another 2000 lines of error and stuff.
do you need them ?

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13603
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: compilation troubles

#9 Post by Geoff the Medio »

Regarding the above #endif error, I have no idea. There is a matching #ifndef on line 2 of Universe.h.

[edit] I've updated SVN again after hearing that the below changes fixed the compile problems for one person. Maybe they'll fix the #endif error as well? Anyone please let me know if this worked / didn't. [/edit]

I'm having no luck resolving this circular inclusion issue, so I've attempted to avoid it completely by moving the relevant code into the cpp. The whole serialization function can't be moved, since its templated, but the part that required the extra includes that were causing the circle isn't dependent on the template, so can be moved.

So, does *this* work...?

Code: Select all

Index: Universe.cpp
===================================================================
--- Universe.cpp	(revision 2080)
+++ Universe.cpp	(working copy)
@@ -921,6 +921,28 @@
     }
 }
 
+void Universe::GetShipDesignsToSerialize(const ObjectMap& serialized_objects, ShipDesignMap& designs_to_serialize)
+{
+    if (s_encoding_empire == ALL_EMPIRES) {
+        designs_to_serialize = m_ship_designs;
+    } else {
+        // add all ship designs of ships this empire knows about -> "objects" from above, not "m_objects"
+        for (ObjectMap::const_iterator it = serialized_objects.begin(); it != serialized_objects.end(); ++it) {
+            Ship* ship = universe_object_cast<Ship*>(it->second);
+            if (ship) {
+                int design_id = ship->ShipDesignID();
+                if (design_id != UniverseObject::INVALID_OBJECT_ID)
+                    designs_to_serialize[design_id] = m_ship_designs[design_id];
+            }
+        }
+
+        // add all ship designs owned by this empire
+        Empire* empire = Empires().Lookup(s_encoding_empire);
+        for (Empire::ShipDesignItr it = empire->ShipDesignBegin(); it != empire->ShipDesignEnd(); ++it) {
+            designs_to_serialize[*it] = m_ship_designs[*it];
+        }
+    }
+}
 //////////////////////////////////////////
 //    Server-Only General Functions     //
 //////////////////////////////////////////
Index: Universe.h
===================================================================
--- Universe.h	(revision 2081)
+++ Universe.h	(working copy)
@@ -12,9 +12,6 @@
 
 #include "Enums.h"
 #include "Predicates.h"
-#include "Ship.h"
-#include "../Empire/EmpireManager.h"
-#include "../Empire/Empire.h"
 
 #if defined(_MSC_VER)
   // HACK! this keeps VC 7.x from barfing when it sees "typedef __int64 int64_t;"
@@ -45,8 +42,6 @@
 #include <string>
 #include <set>
 
-class System;
-
 #ifdef __GNUC__
   // GCC doesn't allow us to forward-declare PlayerSetupData
 #  ifndef _MultiplayerCommon_h_
@@ -60,6 +55,8 @@
 struct UniverseObjectVisitor;
 class XMLElement;
 struct ShipDesign;
+class UniverseObject;
+class System;
 
 class Universe
 {
@@ -311,6 +308,8 @@
 private:
     static bool s_inhibit_universe_object_signals;
 
+    void GetShipDesignsToSerialize(const ObjectMap& serialized_objects, ShipDesignMap& designs_to_serialize);
+
     friend class boost::serialization::access;
     template <class Archive>
     void serialize(Archive& ar, const unsigned int version);
@@ -337,27 +336,9 @@
         }
     }
     ShipDesignMap ship_designs;
-    if (Archive::is_saving::value) {
-        if (s_encoding_empire != ALL_EMPIRES) {
-            // add all ship designs of ships this empire knows about -> "objects" from above, not "m_objects"
-            for (ObjectMap::const_iterator it = objects.begin(); it != objects.end(); ++it) {
-                Ship* ship = universe_object_cast<Ship*>(it->second);
-                if (ship) {
-                    int design_id = ship->ShipDesignID();
-                    if (design_id != UniverseObject::INVALID_OBJECT_ID)
-                        ship_designs[design_id] = m_ship_designs[design_id];
-                }
-            }
+    if (Archive::is_saving::value)
+        GetShipDesignsToSerialize(objects, ship_designs);
 
-            // add all ship designs owned by this empire
-            Empire* empire = Empires().Lookup(s_encoding_empire);
-            for (Empire::ShipDesignItr it = empire->ShipDesignBegin(); it != empire->ShipDesignEnd(); ++it) {
-                ship_designs[*it] = m_ship_designs[*it];
-            }
-        } else {
-            ship_designs = m_ship_designs;
-        }
-    }
     ar  & BOOST_SERIALIZATION_NVP(s_universe_width)
         & BOOST_SERIALIZATION_NVP(objects)
         & BOOST_SERIALIZATION_NVP(ship_designs)

User avatar
loonycyborg
Compilation Expert
Posts: 219
Joined: Thu Jul 06, 2006 10:30 pm
Location: Russia/Moscow

Re: compilation troubles

#10 Post by loonycyborg »

I didn't get any compiler errors compiling freeoriond revision 2082. Most likely micr's issues are caused by conflicts introduced by svn update. This will resolve all conflicts by reverting all changes:

Code: Select all

$ svn revert -R *
In Soviet Russia, forum posts YOU!!

micr
Space Krill
Posts: 5
Joined: Sat Jun 23, 2007 12:39 am

Re: compilation troubles

#11 Post by micr »

yep , compilation of fresh 2082 checkout went without errors .
Thanks for support.

But now I have some issue with gigi :

Code: Select all

./freeorion: error while loading shared libraries: libGiGiSDL.so: cannot open shared object file: No such file or directory

User avatar
loonycyborg
Compilation Expert
Posts: 219
Joined: Thu Jul 06, 2006 10:30 pm
Location: Russia/Moscow

Re: compilation troubles

#12 Post by loonycyborg »

Run "scons install" from GG dir as root.
Add /usr/local/lib to /etc/ld.so.conf(if it's not here already).
Run ldconfig as root.
In Soviet Russia, forum posts YOU!!

micr
Space Krill
Posts: 5
Joined: Sat Jun 23, 2007 12:39 am

Re: compilation troubles

#13 Post by micr »

All right , spasibki .
Done same thing for libfmod , and graphviz .

Now it seems to be working .

Thank you , you are great .

Post Reply