OSDev.org https://forum.osdev.org/ |
|
separate debugging symbols https://forum.osdev.org/viewtopic.php?f=8&t=12074 |
Page 1 of 1 |
Author: | htamas [ Sun Oct 22, 2006 5:28 pm ] |
Post subject: | separate debugging symbols |
On the "How do I use a debugger with my OS" page, in the "Use gdb with Qemu" section, there is: Quote: But thats not all, you can compile your source code under gcc with debuging symbols using "-g". This will add all the debuging symbols in the kernel image itself (Thus making it bigger ). I think there is a way to make this symbol file seperate, if so, please let me know.
While I haven't worked in kernel space yet, I know how to do this in userland (and it's probably the same): Compile the program in two steps. When creating the object file, add debugging information. When linking, keep it in the debug version and remove it from the standard one: Code: gcc -g -c program.c -o program.o gcc program.o -o program.dbg gcc program.o -s -o program If you want, you can remove the code from program.dbg, only keeping the debugging information (this is not necessary): Code: strip program.dbg --only-keep-debug If you prefer compiling in one step, you may do the following instead: Code: gcc -g program.c -o program strip program --only-keep-debug -o program.dbg strip program On to starting gdb. If you would like to use the symbol file from the beginning, you could use: Code: gdb --exec program --symbols program.dbg If you want to load it later or manually, start "gdb program" and at the (gdb) prompt, type Code: add-symbol-file program.dbg
Hope that helps. |
Page 1 of 1 | All times are UTC - 6 hours |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |