This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gdb 5.3nb1 crashing when accessing elements in static libs


> > I'm assuming this is i386? You're going to be in some pain with C++
on
> > this combination; netbsd/i386 2.0 sets gcc to use the stabs
debugging
> > format by default instead of dwarf-2, because of a bug in 3.3's
dwarf
> > generation (netbsd PR #25094; equivalent to GCC bug #16788) [I'm not
> > at all sure that this is the right tradeoff for that bug].
>
> Yes, this is i386 :( What would you recommend I do? I suppose I could
> install a later version of gcc (seems 3.4.0 has this fixed) but I
would
> imagine that that will need a full system rebuild depending on the
> compatibility between 3.3.3 and 3.4.0. Or is there some easier
solution,
> maybe setting g++ to use dwarf-2 and accepting that the offset for
long
> long structs will be incorrect (is this a train smash?)?

Compiling everything with -gdwarf-2 gives me the ability to access
symbols in classes compiled in static libraries which is great (I
couldn't do this before). An interesting thing though is that all global
variables seem to be viewed/treated as ints.

eg.

// global variables
MyClass* g_myclass_p; // initialized later
MyClass g_myclass;
int* g_int_p=(int*)2000;
int g_int=1234;

will give (in gdb printouts):

g_myclass_p = 13423223
g_myclass = 0
g_int_p = 2000
g_int = 1234

Again, this is a new one for me. Does anyone know if this is somehow
related? Thanks for the help so far, I really appreciate it!

- Stuart



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]