LinuxQuestions.org
Register a domain and help support LQ
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices

Reply
 
LinkBack Search this Thread
Old 03-03-2007, 05:35 PM   #1
Millenniumman
Member
 
Registered: Apr 2006
Posts: 81

Rep: Reputation: 15
Debugger selectively not using symbols in library with symbols


I am using DDD (and also kdbg) with GDB. My programming is segfaulting in a function. When I try to debug, I can get to the function that calls that function, but in the stack window the debugger shows the function that actually has the problem as being in a library without debug symbols. It will not show the code for it. The rest of my functions in the stack show up fine, including functions in the same library that won't show up for the problem function.

One thing to note is that there is a small change the library could be dynamically loaded at that point, rather than just dynamically linked. But I would think dl_open()ed libraries would work properly in the debugger.

Is there any likely cause of this?

This is in C/C++.
 
Old 03-05-2007, 02:56 PM   #2
jim mcnamara
Member
 
Registered: May 2002
Posts: 964

Rep: Reputation: 34
What you see is expected debugger behavior.

What you passed to the library is highly suspect. Unless you wrote it as well.
You can see this with non-null terminated strings going into string.h library routines like strcmp() or strchr().
 
Old 03-08-2007, 05:19 PM   #3
Millenniumman
Member
 
Registered: Apr 2006
Posts: 81

Original Poster
Rep: Reputation: 15
Quote:
Originally Posted by jim mcnamara
What you passed to the library is highly suspect.
What do you mean by this, and why would it make the debugger do this?

I'd like to add that this is the only C++ function in the stack, if that could be an issue.
 
Old 03-09-2007, 01:03 PM   #4
jim mcnamara
Member
 
Registered: May 2002
Posts: 964

Rep: Reputation: 34
You didn't mention C++.

The 'suspect' thing is: let's assume you are calling a well-tested library module that is stack dumping. The most common cause for a stack dump in this case is a bad pointer. If you are calling a brand-new library that you wrote, then you can compile the library so that symbols are retained. And since the library is untested, it could likely be a problem in the library code as well.

C++ links code to some different base run-time libraries as well as stdc libraries.
 
Old 03-25-2007, 09:14 AM   #5
Millenniumman
Member
 
Registered: Apr 2006
Posts: 81

Original Poster
Rep: Reputation: 15
The library is not brand new, and has been extensively tested, but not on linux. There could be a bad pointer.

As I understand it, you're saying some problems prevent the debugger from showing code for a function?

How can this be remedied?
 
Old 03-25-2007, 09:44 AM   #6
osor
HCL Maintainer
 
Registered: Jan 2006
Distribution: (H)LFS, Gentoo
Posts: 2,450

Rep: Reputation: 69
Quote:
Originally Posted by Millenniumman
The library is not brand new, and has been extensively tested, but not on linux. There could be a bad pointer.

As I understand it, you're saying some problems prevent the debugger from showing code for a function?

How can this be remedied?
Recompile the said library with debugging symbols.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
vi symbols mean? curos Linux - Software 3 01-03-2007 07:35 PM
Hiding global symbols in a shared/static library jineshkj Programming 16 08-30-2006 12:45 AM
Dynamic Symbols Seniltai Programming 2 11-14-2005 02:36 PM
Error: Unable to resolve GL/GLX symbols - please check your GL library installation. Dquest Linux - General 8 11-02-2005 05:31 AM
New symbols for keyboard fiomba Linux - Software 4 10-22-2004 08:36 AM


All times are GMT -5. The time now is 02:37 AM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration