On Dec 23, 2005, at 6:31 AM,
Hi, Strange - the segmentation fault disappears if I link with the debug-version of libboost_signals (-lboost_signals-gcc-d-1_33_1)!
That's *really* weird. Signals doesn't keep any static data around, so it really doesn't do much before main is called.
It seams to me that some assert statements contain required code (removed in release version if signals)?!
Good idea. I looked through the Signals source, but there are no asserts with required code in them.
Program received signal SIGSEGV, Segmentation fault si_code: 0 - SEGV_UNKNOWN - Unknown Error. 0xc0017cd8 in
() (gdb) backtrace #0 0xc0017cd8 in () warning: Attempting to unwind past bad PC 0xc0017cd8 #1 0xc0027400 in () #2 0xc0027400 in () Error accessing memory address 0x3e7: Bad address.
I was hoping that we would at least get a function name :( I'm not even sure where to start debugging this one. Have you run into this kind of problem with other Boost libraries? It's likely a problem with static initialization for some library, but we'd need to figure out which initializer is causing the problem. We might be able to use backtraces from the initializers that are called when linking against the debug library to narrow it down... Doug