hi, all! My app crashes receiving sigsegv signal when starts. This is the output from gdb:
#0 0x009e8649 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::compare(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const () from /usr/lib/i386-linux-gnu/libstdc++.so.6
...
#6 0x0034b85b in IceInternal::FactoryTable::addObjectFactory (this=0x81252f8, t=..., f=...) at FactoryTable.cpp:96
#7 0x0090beda in __F__jupiter__JRequest__Init () at ../jbase.cpp:322
#8 __static_initialization_and_destruction_0 () at ../jbase.cpp:331
#9 global constructors keyed to jbase.cpp(void) () at ../jbase.cpp:647
#10 0x00939f6d in __do_global_ctors_aux () from /home/henry/Work/jupiter/comm/dll/.libs/libjuserclass.so.0
#11 0x00907f40 in _init () from /home/henry/Work/jupiter/comm/dll/.libs/libjuserclass.so.0
libjuserclass is a dll, and JRequest is a class defined in jbase.ice.
//jbase.ice
module jupiter {
// Protocols supportted for now.
enum JCommType {
//...
};
// Since hub is stateless, you must tell hub what do you want.
enum JAction {
//...
};
// All requests sending to hub must subclass from this.
class JRequest {
JCommType type; //type of communication
JAction act; //name of calling method
};
// All classes receiving from hub must subclass from this.
class JResponse {
bool success = true;
};
};
#endif
The weird thing is the app crashes before calling the function referenced from the dll. please help!

Reply With Quote
air<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std:
perator[] (this=0x8125328, __k=...) at /usr/include/c++/4.5/bits/stl_map.h:451