unregistered class

Questions, problems and discussion about compiling FreeOrion.

Moderators: Oberlus, Oberlus

Post Reply
Message
Author
107
Space Krill
Posts: 4
Joined: Fri May 21, 2010 4:57 am

unregistered class

#1 Post by 107 » Fri May 21, 2010 7:09 am

Hello, All :)
I compile freeorion from trunk (on gentoo system) successfully, then run it.

When I start "Single Player" or "Quick start" with default Galaxy Setup the game is freezing on "Generating Universe and AIs..." and I see exeption in console:

Code: Select all

...
meter: METER_TARGET_FARMING reset current: 0
meter: METER_TARGET_FARMING after current: 15
meter: METER_TARGET_MINING reset current: 0
meter: METER_TARGET_MINING after current: 5
meter: METER_TARGET_INDUSTRY reset current: 0
meter: METER_TARGET_INDUSTRY after current: 0
meter: METER_TARGET_RESEARCH reset current: 0
meter: METER_TARGET_RESEARCH after current: 0
meter: METER_TARGET_TRADE reset current: 0
meter: METER_TARGET_TRADE after current: 0
main() caught exception(std::exception): unregistered class
What can I do, to find bug?

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

Re: unregistered class

#2 Post by Geoff the Medio » Fri May 21, 2010 7:44 am

This is probably a Boost version issue. Against what Boost version are you compiling and linking? I believe 1.42 is required. 1.43 might work.

107
Space Krill
Posts: 4
Joined: Fri May 21, 2010 4:57 am

Re: unregistered class

#3 Post by 107 » Fri May 21, 2010 9:45 am

I have boost-1.42.0.

Maybe problem in my freeorion version?
I checkout it from
https://freeorion.svn.sourceforge.net/s ... rion/trunk
but in game I see version: "v0.3.13 (Rev:???)"

but svn info says:

Code: Select all

Revision: 3599
Last Changed Rev: 3599
Last Changed Date: 2010-05-18 15:09:41 +0400
looks like I have a last version.
Hmmm... I'll try to rebuild with debug...

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

Re: unregistered class

#4 Post by Geoff the Medio » Fri May 21, 2010 7:25 pm

107 wrote:in game I see version: "v0.3.13 (Rev:???)"
The Rev:??? is a problem with the CMake code that sets that number from the SVN version. Someone suggested a modification, but I don't use CMake, so haven't tested it. It doesn't indicate anything wrong with the rest of the build.

Similalry, the v0.3.13 and not v0.3.14 is because a version number somewhere in the CMake stuff wasn't updated recently. It doesn't indicate anything else would be wrong.

As for the unregistered class issues, they've been coming and going recently, and I don't use Linux myself so can't easily test. It's possible something since the v0.3.14 release caused this problem, so you might try building SVN revision 3571 instead of 3599...

107
Space Krill
Posts: 4
Joined: Fri May 21, 2010 4:57 am

Re: unregistered class

#5 Post by 107 » Mon May 24, 2010 7:34 am

Geoff the Medio wrote:
107 wrote:try building SVN revision 3571 instead of 3599...
No, 3571 show "main() caught exception(std::exception): unregistered class" too :(

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

Re: unregistered class

#6 Post by Geoff the Medio » Mon May 24, 2010 9:54 am

Can you make absolutely sure you're building against the version of boost you think you are? If you built it yourself or had it installed, apparently there might be other versions of some of the files being linked in unintentionally...

dwlg122
Space Krill
Posts: 9
Joined: Sun May 23, 2010 7:52 am

Re: unregistered class

#7 Post by dwlg122 » Thu May 27, 2010 8:00 am

I have the same problem with freeorion 3608 and boost 1.43 under linux2.6.34 64bit

Code: Select all

read(5, 0x1c78034, 4096)                = -1 EAGAIN (Resource temporarily unavailable)
futex(0x1c58d84, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 945, {1274946357, 178135000}, ffffffffmain() caught exception(std::exception): unregistered class
) = ? ERESTART_RESTARTBLOCK (To be restarted)
--- SIGCHLD (Child exited) @ 0 (0) ---
restart_syscall(<... resuming interrupted call ...>) = -1 ETIMEDOUT (Connection timed out)
The game simply stops at loading or starting a universe.

Maybe it is a 64bit issue with >=boost 1.42

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

Re: unregistered class

#8 Post by Geoff the Medio » Thu May 27, 2010 1:53 pm

It might also depend on the GCC version you're using. FYI, kroddn informs me he uses 4.3.2 when compiling the static release builds.

User avatar
kroddn
Static Linker
Posts: 347
Joined: Thu Jun 28, 2007 10:28 am

Re: unregistered class

#9 Post by kroddn » Thu May 27, 2010 2:01 pm

I can only suggest to make sure that boost is not mixed on the system.

On my system, I removed all libs with "boost" in its name from /usr/local/lib and the whole directories like /usr/local/include/boost-X_xx .

Than completely remove the SVN checkout of FreeOrion, make a clean checkout and build it again.

Post Reply