[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"detail-sidebar-cat-1-en-105":3,"doc-seo-571748-105":53,"doc-detail-571748-en":127},{"code":4,"msg":5,"data":6},0,"success",[7,14,19,24,29,34,39,44,49],{"id":8,"doc_module":9,"doc_module_name":10,"category_name":11,"show_sort_weight":12,"slug":13},11,1,"Template","Presentations",90,"presentations",{"id":15,"doc_module":9,"doc_module_name":10,"category_name":16,"show_sort_weight":17,"slug":18},12,"Resumes",80,"resumes",{"id":20,"doc_module":9,"doc_module_name":10,"category_name":21,"show_sort_weight":22,"slug":23},14,"Invoices",70,"invoices",{"id":25,"doc_module":9,"doc_module_name":10,"category_name":26,"show_sort_weight":27,"slug":28},15,"Posters",60,"posters",{"id":30,"doc_module":9,"doc_module_name":10,"category_name":31,"show_sort_weight":32,"slug":33},16,"Social Media",50,"social-media",{"id":35,"doc_module":9,"doc_module_name":10,"category_name":36,"show_sort_weight":37,"slug":38},17,"Forms",40,"forms",{"id":40,"doc_module":9,"doc_module_name":10,"category_name":41,"show_sort_weight":42,"slug":43},18,"Letters",30,"letters",{"id":45,"doc_module":9,"doc_module_name":10,"category_name":46,"show_sort_weight":47,"slug":48},21,"Paper Templates",5,"papers-templates",{"id":50,"doc_module":9,"doc_module_name":10,"category_name":51,"show_sort_weight":4,"slug":52},158,"General","general-158",{"code":4,"msg":54,"data":55},"ok",{"site_id":56,"language":57,"slug":58,"title":59,"keywords":60,"description":61,"schema_data":62,"social_meta":120,"head_meta":122,"extra_data":124,"updated_unix":126},105,"en","gnu-debugger-cheat-sheet","GNU Debugger Cheat Sheet","","GNU Debugger (gdb) cheat sheet by Stephan Avenwedde explains how to monitor and control a program during execution, including using debug symbols for best results. It covers core debugging startup modes (launching with arguments, attaching to running processes, and handling coredumps via systemd) and key flow-control commands. It also provides breakpoints and watchpoints, stack-frame navigation, and utilities for evaluating values, types, and printing data, plus commands to modify variables and inspect directories and OS ABI settings.",{"@graph":63,"@context":119},[64,80,102],{"@type":65,"itemListElement":66},"BreadcrumbList",[67,71,74,77],{"item":68,"name":69,"@type":70,"position":9},"https://docshare.wps.com","Home","ListItem",{"item":72,"name":10,"@type":70,"position":73},"https://docshare.wps.com/template/",2,{"item":75,"name":51,"@type":70,"position":76},"https://docshare.wps.com/template/general/",3,{"item":78,"name":59,"@type":70,"position":79},"https://docshare.wps.com/template/gnu-debugger-cheat-sheet/571748/",4,{"url":78,"name":59,"@type":81,"image":82,"author":87,"headline":59,"publisher":90,"fileFormat":93,"inLanguage":57,"description":61,"dateModified":94,"datePublished":95,"encodingFormat":93,"isAccessibleForFree":96,"interactionStatistic":97},"DigitalDocument",{"url":83,"@type":84,"width":85,"height":86},"https://docshare.wps.com/thumbnails/gnu-debugger-cheat-sheet/571748.png","ImageObject",442,249,{"name":88,"@type":89},"Stanford","Person",{"url":68,"name":91,"@type":92},"DocShare","Organization","application/pdf","2026-10-22","2026-10-13",true,{"@type":98,"interactionType":99,"userInteractionCount":101},"InteractionCounter",{"@type":100},"ViewAction",6,{"@type":103,"mainEntity":104},"FAQPage",[105,111,115],{"name":106,"@type":107,"acceptedAnswer":108},"What compilation settings improve gdb results?","Question",{"text":109,"@type":110},"Compile the program with debug symbols using -g in GCC for the best results.","Answer",{"name":112,"@type":107,"acceptedAnswer":113},"How do you start debugging a program with arguments in gdb?",{"text":114,"@type":110},"Use gdb --args \u003Cexecutable> \u003Cargs> to launch the program under the debugger.",{"name":116,"@type":107,"acceptedAnswer":117},"How can you inspect stack frames and move through them?",{"text":118,"@type":110},"Use backtrace to show stack frames, then use up \u003Cn> or down \u003Cn> to move between them.","https://schema.org",{"og:url":78,"og:type":121,"og:title":59,"og:site_name":91,"og:description":61},"article",{"robots":123,"canonical":78},"index,follow",{"doc_id":125,"site_id":56},571748,1792087344,{"code":4,"msg":5,"data":128},{"doc_id":125,"user_id":129,"nickname":88,"user_avatar":130,"doc_module":9,"category_id":50,"category_name":51,"doc_title":59,"doc_description":61,"doc_content":131,"file_id":132,"file_url":133,"file_type":134,"file_size":135,"view_count":101,"is_deleted":4,"is_public":9,"is_downloadable":9,"audit_status":9,"page_count":73,"language":136,"language_code":57,"site_id":56,"html_lang":57,"table_of_contents":137,"faqs":138,"seo_title":139,"seo_description":61,"update_tm":140,"read_time":9},2336477552062,"https://ap-avatar.wpscdn.com/davatar_994ba38a5ba835b3df7d355c54d3ed8d","GNU Debugger Cheat Sheet  \nBy Stephan Avenwedde  \nGNU Debugger (gdb) allows you to monitor a program as it executes. For best results, the program must have been compiled with debug symbols (-g in GCC) .  \nLaunch  \nStart debugging  \nAttach to a running process  \ngdb --args \u003Cexecutable> \u003Cargs> gdb attach \u003Cpid>  \nCoredumps (systemd only)  \nRun gdb on the latest coredump coredumpctl debug  \nUse the coredump of what ran on pid 3692 coredumpctl debug 3692  \nFlow control Long Shortcut  \nStart, but stop at the main procedure  \nStart, do not stop at main procedure Continue execution  \nContinue execution until a different line of code Continue next instruciton, step into subroutines Execute current line of code  \nExecute next instruction  \nShow stack frames  \nMove n number stack frames up or down  \nstart \u003Cargs>  \nrun \u003Cargs> continue step stepi next  \nnexti  \nbacktrace  \nup \u003Cn> / down \u003Cn>  \nr  \nc  \ns  \nsi  \nn  \nni  \nbt  \n[opensource.com](opensource.com) Twitter @opensourceway • [Fosstodon.org/@osdc](Fosstodon.org/@osdc) CC BY-SA 4.0  \nGNU Debugger Cheat Sheet  \nBy Stephan Avenwedde  \nBreakpoints  \nStop execution at line n  \nStop at a specific address Stop at the program’s entry point Stop at the main function Show all breakpoints  \nbreak \u003Cn>  \nbreak *0xabcdef  \nbreak   start  \nbreak main  \nInfo breakpoints  \nWatchpoints  \nWatch a variable  \nStop when variable foo is greater than 0 Stop at \u003Cevent>  \nRemove 4th watch, catch, or break point  \nwatch \u003Cexpression>  \nwatch foo > 0  \ncatch \u003Cevent> disable| enable|delete|clear 4  \nValue and type evaluation  \no Octal x Hexadecimal u Unsigned decimal t Binary  \nc Char a Address f Floating point s String  \nPrint value of a variable  \nPrint value of exrpression in Octal format Show the type of a variable  \nPrint type information  \nprint \u003Cvar name> print /o \u003Cexpression> whatis \u003Cvar name> ptype \u003C type-name  \nModifying values  \nModify value of Mybool to true Write integer 4 to specific address Modify a single bypte in memory Modify a string variable  \nset bMybool = true  \nset {int}0x7fffffffd5b8 = 4  \nset *(unsigned char*)0x401435 set Mystring = “Hello world”  \nShow  \nShow directories for finding source files Show search path for finding object files Show the OS ABI of target  \nshow directories show path  \nshow osabi  \n[opensource.com](opensource.com) Twitter @opensourceway • [Fosstodon.org/@osdc](Fosstodon.org/@osdc) CC BY-SA 4.0","cbCaicUfe9YOyN5o","https://ap.wps.com/l/cbCaicUfe9YOyN5o","pdf",450339,"English","# Launch and attach\n## Flow control and stepping\n## Stack frames\n# Breakpoints and watchpoints\n## Breakpoints\n## Watchpoints and catches\n# Value/type evaluation and printing\n## Print value and type\n## Modifying values\n# Show and environment queries\n## Directories, path, and OS ABI","[{\"question\":\"What compilation settings improve gdb results?\",\"answer\":\"Compile the program with debug symbols using -g in GCC for the best results.\"},{\"question\":\"How do you start debugging a program with arguments in gdb?\",\"answer\":\"Use gdb --args \\u003cexecutable\\u003e \\u003cargs\\u003e to launch the program under the debugger.\"},{\"question\":\"How can you inspect stack frames and move through them?\",\"answer\":\"Use backtrace to show stack frames, then use up \\u003cn\\u003e or down \\u003cn\\u003e to move between them.\"}]","GNU Debugger Cheat Sheet | PDF",1791923534]