Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

nofHunter::Destroy(): Assertion `!animal' failed #344

Closed
stefson opened this issue Dec 31, 2015 · 8 comments
Closed

nofHunter::Destroy(): Assertion `!animal' failed #344

stefson opened this issue Dec 31, 2015 · 8 comments
Assignees
Labels

Comments

@stefson
Copy link
Contributor

stefson commented Dec 31, 2015

I am at 7161b57

is the backtrace verbose enough?

s25client: /var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/figures/nofHunter.h:67: virtual void nofHunter::Destroy(): Assertion `!animal' failed.
[New Thread 0x7fffeffad700 (LWP 12483)]

Program received signal SIGABRT, Aborted.
0x00007ffff62c0427 in raise () from /lib64/libc.so.6
(gdb) bt
#0 0x00007ffff62c0427 in raise () from /lib64/libc.so.6
#1 0x00007ffff62c17aa in abort () from /lib64/libc.so.6
#2 0x00007ffff62b93dd in ?? () from /lib64/libc.so.6
#3 0x00007ffff62b9492 in __assert_fail () from /lib64/libc.so.6
#4 0x0000000000654157 in ?? ()
#5 0x00000000005684b6 in ?? ()
#6 0x000000000055d85c in ?? ()
#7 0x0000000000560d17 in ?? ()
#8 0x00000000005611e2 in ?? ()
#9 0x00000000004d4ddd in ?? ()
#10 0x0000000000424235 in ?? ()
#11 0x00007ffff62ad7b0 in __libc_start_main () from /lib64/libc.so.6
#12 0x00000000004c3ef9 in ?? ()

(gdb) continue
Continuing.
ALSA lib /var/tmp/portage/media-libs/alsa-lib-1.0.29/work/alsa-lib-1.0.29/src/pcm/pcm.c:7905:(snd_pcm_recover) underrun occurred
[Thread 0x7fffeffad700 (LWP 12483) exited]

replay is attached

2015-12-31_15-23-13.rpl.zip

@Flamefire Flamefire self-assigned this Dec 31, 2015
@Flamefire Flamefire added the bug label Dec 31, 2015
@Flamefire Flamefire added this to the 0.8.3 - bugfixes milestone Dec 31, 2015
@Flamefire
Copy link
Member

Thanks for reporting. Will fix that.
Intresting that you get the assertion but no line information. Did you build it yourself? How? (Debug/Release mode)

@stefson
Copy link
Contributor Author

stefson commented Dec 31, 2015

I'm using Gentoo, so a lot of things are different! I have to patch and revert a few things localy in the cmake files so that they fit into the gentoo-way. For a debug build I am adding -ggdb cflags , that's it :)

@Flamefire
Copy link
Member

Feel free to submit PRs that make the build tools Gentoo compatible :)
Well but there are no debug symbols (the ?? in the backtrace) that's why I'm wondering. Using the CMAKE_BUILD_TYPE=Debug does not help? In this case I don't need the symbols, but they might be helpful for other bugs

@stefson
Copy link
Contributor Author

stefson commented Dec 31, 2015

This checkbox for using either static or dynamical linked boost libs is one of these thing I have to revert, the build scripts are simply not meant to be interactive. But we have had this discussion back then, see 2aeb584

The point is that the source directly from the repo is optimized for your build server which is building in a debian-way I guess? So that I have to delete the obviously useless s25update, and so on, you know?

But I would really like to know why there are no symbols. My guess is that I am using dynamic libs, so that I would have to rebuilt my whole system with debug cflags to have them, isn't it?

@Flamefire
Copy link
Member

I think we can change the build script so, that dynamic libs are the default and the server uses static libs. But if you have the static boost libs, they are better...
Note that you can easily use dynamic boost libs too without the gui. See the end of the linked discussion.

No. It is optimized for a flexible build environment. E.g. on windows I just have to unzip the contrib folder, run Cmake and build with VS. Not a single issue here. What is the point in deleting the s25update? It doesn't hurt if it just exists.

Normally symbols are added by when compiling in debug mode (-g if I remember correctly) The libs are not the problem, as symbols are missing in the s25client. That the symbols in the boost libs are missing is ok

@stefson
Copy link
Contributor Author

stefson commented Dec 31, 2015

The problem with boost is that it if the libraries are static they have to be built with -fPic cflags. And that is something that the gentoo maintainer do not wish to happen, so I would have to make kind of an effort to maintain my own version. The s25update binary is not built because it can be easily avoided :)

I guess that I will have to take a look into the eclass, which is in Gentoo kind of a header for the gentoo build scripts. These include a lot of routines commonly used among a lot of packages. Just have to understand this twisted logic :)

@stefson
Copy link
Contributor Author

stefson commented Jan 1, 2016

that one is better, isn't it?

Program received signal SIGABRT, Aborted.

0x00007ffff62c0427 in raise () from /lib64/libc.so.6
(gdb) bt
#0 0x00007ffff62c0427 in raise () from /lib64/libc.so.6
#1 0x00007ffff62c17aa in abort () from /lib64/libc.so.6
#2 0x00007ffff62b93dd in ?? () from /lib64/libc.so.6
#3 0x00007ffff62b9492 in __assert_fail () from /lib64/libc.so.6
#4 0x0000000000654157 in nofHunter::Destroy (this=)
at /var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/figures/nofHunter.h:67
#5 0x00000000005684b6 in EventManager::NextGF (this=0x584f500)
at /var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/EventManager.cpp:175
#6 0x000000000055d85c in GameClient::NextGF (this=0x57840c0)
at /var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/GameClient.cpp:1567
#7 0x0000000000560d17 in GameClient::ExecuteGameFrame (this=this@entry=0x57840c0,
skipping=skipping@entry=false)
at /var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/GameClient.cpp:1516
#8 0x00000000005611e2 in GameClient::Run (this=0x57840c0)
at /var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/GameClient.cpp:248
#9 0x00000000004d4ddd in GameManager::Run (this=0xd209b0)
at /var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/GameManager.cpp:171
#10 0x0000000000424235 in main (argc=, argv=0x7fffffffddc8)
at /var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/main.cpp:357
(gdb) q

@stefson
Copy link
Contributor Author

stefson commented Jan 1, 2016

now with complete backtrace 👍 but you won't need it anymore, right?

Program received signal SIGABRT, Aborted.
0x00007ffff62c0427 in **GI_raise (sig=sig@entry=6)
at ../sysdeps/unix/sysv/linux/raise.c:55
55 ../sysdeps/unix/sysv/linux/raise.c: Datei oder Verzeichnis nicht gefunden.
(gdb) bt
#0 0x00007ffff62c0427 in __GI_raise (sig=sig@entry=6)
at ../sysdeps/unix/sysv/linux/raise.c:55
#1 0x00007ffff62c17aa in __GI_abort () at abort.c:89
#2 0x00007ffff62b93dd in __assert_fail_base (
fmt=0x7ffff63f10b8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n",
assertion=assertion@entry=0x7e2afc "!animal",
file=file@entry=0x7e29e0 "/var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/figures/nofHunter.h", line=line@entry=67,
function=function@entry=0x7e2bc0 nofHunter::Destroy()::__PRETTY_FUNCTION** "virtual void nofHunter::Destroy()") at assert.c:92
#3 0x00007ffff62b9492 in **GI___assert_fail (assertion=0x7e2afc "!animal",
file=0x7e29e0 "/var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/figures/nofHunter.h", line=67,
function=0x7e2bc0 nofHunter::Destroy()::__PRETTY_FUNCTION** "virtual void nofHunter::Destroy()") at assert.c:101
#4 0x0000000000654157 in nofHunter::Destroy (this=)
at /var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/figures/nofHunter.h:67
#5 0x00000000005684b6 in EventManager::NextGF (this=0x5afcf50)
at /var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/EventManager.cpp:175
#6 0x000000000055d85c in GameClient::NextGF (this=0x5787c20)
at /var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/GameClient.cpp:1567
#7 0x0000000000560d17 in GameClient::ExecuteGameFrame (this=this@entry=0x5787c20,
---Type to continue, or q to quit---
skipping=skipping@entry=false)
at /var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/GameClient.cpp:1516
#8 0x00000000005611e2 in GameClient::Run (this=0x5787c20)
at /var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/GameClient.cpp:248
#9 0x00000000004d4ddd in GameManager::Run (this=0xd209b0)
at /var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/GameManager.cpp:171
#10 0x0000000000424235 in main (argc=, argv=0x7fffffffddb8)
at /var/tmp/portage/games-strategy/s25rttr-9999-r3/work/s25rttr-9999/src/main.cpp:357

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants