Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [cdt-dev] specifying "GDB Command File" in Debugger tab of Debug Configurations dialog

> -----Original Message-----
> From: cdt-dev-bounces@xxxxxxxxxxx 
> [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Tim Black
> Sent: Tuesday, July 27, 2010 7:30 PM
> To: CDT General developers list.
> Subject: [cdt-dev] specifying "GDB Command File" in Debugger 
> tab of Debug Configurations dialog
> 
> I need to know what is the PATH that CDT (or gdb?) uses to 
> look up the "GDB Command File" setting in the Debugger tab of 
> the Debugger Configurations dialog?

There is no path used by CDT.  We simply pass the text in the
"GDB command file" text box, to gdb.  CDI specifies this text
when starting gdb using --command, while DSF-GDB sends a
'source <file>' command.

> I want to share a .gdbinit file with my team for use in C/C++ 
> debug launchers, so I don't want the launcher file to contain 
> absolute paths. But I noticed that when I set the "GDB 
> Command File" setting to ~/.gdbinit, the corresponding 
> .launch file changes the value of 
> org.eclipse.cdt.debug.mi.core.GDB_INIT and 
> org.eclipse.cdt.dsf.gdb.GDB_INIT to "/home/tblack/.gdbinit". 

I didn't see this myself.  I saw ~/.gdbinit in the launch file.

FYI, org.eclipse.cdt.debug.mi.core.GDB_INIT is used by CDI while
org.eclipse.cdt.dsf.gdb.GDB_INIT is used by DSF-GDB.
We probably should unify them (and many others) but it hasn't
been important enough for anyone to take the time.

> But I noticed that when I change the "GDB Command File" 
> setting to ".gdbinit", the corresponding .launch file leaves 
> the value of org.eclipse.cdt.debug.mi.core.GDB_INIT as 
> "/home/tblack/.gdbinit", but changes 
> org.eclipse.cdt.dsf.gdb.GDB_INIT to ".gdbinit". Why does one 
> expand to absolute path and the other not? In this example I 
> have only one .gdbinit on my system and it is in /home/tblack

Assuming you are using DSF-GDB, when you change the file name,
only org.eclipse.cdt.dsf.gdb.GDB_INIT will change, 
org.eclipse.cdt.debug.mi.core.GDB_INIT will not be changed since
it only applies to CDI.  This is most probably why you still
saw it as it was before.

> We use shared .launch files. I'm prepared to make the 
> simplification that each user has one global .gdbinit file 
> that they use for debugging all C/C++ projects. This is 
> because I'd rather not have to create a duplicate .gdbinit 
> file for each .launch.

I don't understand what you want to be able to do.
Do you want one .gdbinit file for all your team, or do you
want each user to have her own, while still using the same
.launch file?

Also, where is your gdb?  If it can be anywhere as based
on the PATH variable, then not using absolute path for .gdbinit
may be difficult.  If you can't predict where gdb will be run
from, then choosing a .gdbinit file relative to that unpredictable
path won't work.

Marc


Back to the top