I'm trying to debug a perl module that is an xs interface to a c++ library.
Details of the problem can be found under my name at: http://archive.develooper.com/perl-xs%40perl.org/ I'm posting here because I'm wondering what I could install on debian go get better debugging info when tracing into system libraries with gdb. I'm running woody. Here's the problem in a nutshell: The module works on some platforms and on others it doesn't, and I've installed everything from source, except the system libraries (and gdb is a deb). Normally: My perl module is a simply interface to the library. The c++ library attempts to open an *optional* config file, if it doesn't exist it throws an exception. The exception is caught and ignored (because the config file is optional). When it doesn't work: On my Debian machine, the exception is thrown (I have added cout messages around the exception constructor), but the catch block is never called. Instead the program aborts. If I *override* terminate() in the c++ library with just a function to print a message, the exception constructor is called, then terminate() is called twice, then the catch block for the exception runs and the program exits normally. It's more complicated, of course. It only aborts some times on my Debian machine (never on my SuSE or Solaris 2.6, and always on BSD 4.5). On Debian it aborts *only* if I run the perl module with PERL_DL_NONLAZY=1, which is a flag to tell dlopen() to attempt to resolve all external symbols. Using gdb to single step is not helpful. I can start at the last line of the exception constructor, and single setp until the program aborts. But I don't see anything of interest. I assume that's because I have stripped system libraries. I assume I need dev libraries, but frankly, I'm not experienced enough to know what packages I might need to install, and how to go about debugging with them (other than installing and single stepping again). I'm also not clear what damage I might do by installing different system libraries. Can anyone offer some advice? Thanks. -- Bill Moseley mailto:[EMAIL PROTECTED] -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]