dbx can't find C source files

39 Views Asked by At

[Env: Solaris 11 on i386; dbx from Solaris Studio 12.2; Sun C 5.7]

I am attempting to debug a large (~200 source code files) C program in dbx. I can invoke dbx with my executable, but I can't even get dbx to find the source code for main() - when I type list main inside dbx, I get

dbx: no source lines for "main"

I am debugging in the directory in which the final executable was compiled. The source for main is in ../sources/multithread/main.c. I have looked inside main.o (located in the debugging/final compilation directory) and inside the final executable, and can see the filename/relative directory mentioned. Things I have tried:

  • Adding -I ../sources/multithread to the dbx command line invocation
  • Adding pathmap <full_path_to_multithread_dir> to ./.dbxrc
  • Copying main.c to the debug/final compilation dir
  • Creating a small Hello World testcase and using dbx on this (this works)
  • Only turning on debug info (-g) for main.c (thought I might have too many debug symbols, but that didn't help)

Are there architectural limitations I'm running into here? Missing some cc/linker options? dbx can't handle relative paths for debugging?

0

There are 0 best solutions below