diff options
Diffstat (limited to 'faq/dev')
-rw-r--r-- | faq/dev/debugging_inside_glibc.mdwn | 19 | ||||
-rw-r--r-- | faq/dev/debugging_translators.mdwn | 20 |
2 files changed, 39 insertions, 0 deletions
diff --git a/faq/dev/debugging_inside_glibc.mdwn b/faq/dev/debugging_inside_glibc.mdwn new file mode 100644 index 00000000..63a77a04 --- /dev/null +++ b/faq/dev/debugging_inside_glibc.mdwn @@ -0,0 +1,19 @@ +[[!meta copyright="Copyright © 2007, 2008, 2009, 2013 Free Software Foundation, +Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +In Debian, to get [[debugging]] information for glibc, you need to install the +`libc0.3-dbg` package. At the place [[debugging/GDB]] looks for debugging +symbols by default (`/usr/lib/debug/lib/`), Debian's `libc0.3-dbg` stores only +the frame unwind information used for backtracing. If you want to step into +glibc while debugging, you need to add `LD_LIBRARY_PATH=/usr/lib/debug` to +debugged program's environment (`set env VAR value` from the GDB command line). +If that still does not work, try `LD_PRELOAD=/usr/lib/debug/libc.so.0.3` +instead. diff --git a/faq/dev/debugging_translators.mdwn b/faq/dev/debugging_translators.mdwn new file mode 100644 index 00000000..a054f2e0 --- /dev/null +++ b/faq/dev/debugging_translators.mdwn @@ -0,0 +1,20 @@ +[[!meta copyright="Copyright © 2007, 2008, 2013 Free Software Foundation, +Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +In order to [[debug|debugging]] translators and being able to step into glibc +during it, on Debian you need the `hurd-dbg` and `libc0.3-dbg` packages installed. +If you need to debug the initialization of the translator, start the translator +like + + $ settrans -P /foo /usr/bin/env LD_LIBRARY_PATH=/usr/lib/debug /hurd/foofs + +The `-P` option will make it +pause and you will be able to attach [[debugging/GDB]] to the process. |