Page 1 of 1

unregistered class

Posted: Fri May 21, 2010 7:09 am
by 107
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?

Re: unregistered class

Posted: Fri May 21, 2010 7:44 am
by Geoff the Medio
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.

Re: unregistered class

Posted: Fri May 21, 2010 9:45 am
by 107
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...

Re: unregistered class

Posted: Fri May 21, 2010 7:25 pm
by Geoff the Medio
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...

Re: unregistered class

Posted: Mon May 24, 2010 7:34 am
by 107
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 :(

Re: unregistered class

Posted: Mon May 24, 2010 9:54 am
by Geoff the Medio
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...

Re: unregistered class

Posted: Thu May 27, 2010 8:00 am
by dwlg122
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

Re: unregistered class

Posted: Thu May 27, 2010 1:53 pm
by Geoff the Medio
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.

Re: unregistered class

Posted: Thu May 27, 2010 2:01 pm
by kroddn
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.