Source code paths for the debugger

I’ve noticed that for the most part I have to manually browse to the source in the debugger. Which is a huge time sink. It seems to have a relative path to the home folder stored in the binary but can’t resolve that automatically at debug time.

Is there a way to make them absolute? Or get the debugger to resolve paths successfully all the time?

The path is generated by gcc, so if you path absolute paths to gcc, you get absolue paths in the binary.

On Debugger side, the logic to resolve relative paths can certainly be improved, once you have set the base directory for one file, it could deduce the path for other files relative to that, for example?

Ok I’ll have a play around with my make files and see what I can do with the paths.

Is there an easyish way to make custom builds of the debugger? Like how high is the barrier of entry to working on the debugger?

No magic involved.

After getting the Haiku source code from the Git repository and configuring it using the configure script (following instructions here: Building Haiku | Haiku Project):

jam -q Debugger

(add -j4 to build on 4 CPUs in parallel for faster builds if you want)

The sourcecode for Debugger is in src/apps/debugger

The code for locating the sourcecode is here (several functions starting from this one): TeamWindow.cpp « team_window « gui « user_interface « debugger « apps « src - haiku - Haiku's main repository

It will attempt to locate the sourcefile using a query based on the name, that should work unless you have queries disabled on the partition where you store your sourcecode (unfortunately not an uncommon thing to do, since partitions without queries are a little faster). Then if that fails, it will let you find the sourcefile manually.

2 Likes