You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
1.9 KiB
HTML
48 lines
1.9 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
|
<meta name="Author" content="Johannes Sixt">
|
|
<title>KDbg - User's Manual - Tips and Tricks</title>
|
|
</head>
|
|
<body text="#000000" bgcolor="#FFFFFF">
|
|
<p><a href="index.html">Contents</a></p>
|
|
<h1>
|
|
Tips and Tricks</h1>
|
|
|
|
<ul>
|
|
<li>
|
|
You can use breakpoints as bookmarks: Just set a breakpoint and disable
|
|
it. Later, you can quickly come back to that breakpoint by double-clicking
|
|
it in the breakpoint list (or select it and click <i>View Code</i>). Since
|
|
breakpoints are persistent (i.e. KDbg remembers them across invocations
|
|
of a program), you get them back next time you invoke KDbg for that particular
|
|
program.</li>
|
|
|
|
<li>
|
|
You can display a value in the watch section in different ways by prepending
|
|
gdb's format specifiers in front of the variable to display. E.g. <tt>/x
|
|
var.member</tt> displays the <tt>var.member</tt> in hexadecimal notation.</li>
|
|
|
|
<li>
|
|
You can set breakpoints in a source files that belong to a shared library.
|
|
Such breakpoints will be marked as <em>orphaned</em> if the program is not active.
|
|
<A href="breakptlist.html#orphanedbp">Orphaned breakpoints</A> are not effective.
|
|
In order to make them effective, the program must stop at a time when the shared
|
|
library is loaded. For this it is usually sufficient to set a breakpoint in
|
|
<tt>main()</tt>. At the time when this breakpoint is hit, the orphaned breakpoints
|
|
in the shared library become effective.</li>
|
|
|
|
<li>
|
|
Debugging multi-threaded programs on NPTL-enabled Linux systems (kernel 2.6.x
|
|
or later and glibc 2.3.x or later) may sometimes fails; gdb stops the program
|
|
at unexpected instances. In this case the following may help (using bash):
|
|
<pre>
|
|
LD_ASSUME_KERNEL=2.4.19 kdbg myprogram
|
|
</pre>I.e. you run KDbg from the command line such that the old
|
|
Linuxthreads implementation is used.</li>
|
|
</ul>
|
|
|
|
</body>
|
|
</html>
|