Site Map - skip to main content

Hacker Public Radio

Your ideas, projects, opinions - podcasted.

New episodes Monday through Friday.


hpr3284 :: Introduction to gdb

A really friendly introduction to Gnu Debugger

<< First, < Previous, Latest >>

Hosted by klaatu on 2021-03-04 is flagged as Clean and is released under a CC-BY-SA license.
Tags: programming, cpp, gdb, gcc.
Listen in ogg, spx, or mp3 format. | Comments (0)

Part of the series: Compilers - how they work

In this series we examine how compilers work

Frustrated by gdb tutorials that are either too complicated or too simple? I think this might be an actually-useful tutorial to help you see how and why gdb can be useful. Anyway, it's the path I followed to finding a use for the mysterious gdb, so maybe it will work for you.

To follow along with this episode, here's some simple yet buggy code. This compiles but crashes when run.


#include <iostream>
#include <stdlib.h>  // rand
#include <stdio.h>  // printf

using namespace std;

int main () {

srand (time(NULL));
int penguin = rand() % 8;
cout << "This is a message from your friendly coder\n" << endl;
int kiwi = 3;

printf("penguin is set to is %s\n", penguin);
printf("kiwi is set to is %s\n", kiwi);

 return 0;
} // main

To compile it and see it crash, do this:


$ g++ example.cpp
$ ./a.out

To compile it with debug symbols so you can step through it in gdb, do this:


$ g++ -g -o debugtest example.cpp
$ gdb debugtest

You can now follow along with this tutorial.

For extra credit, try compiling this with clang++ instead!


Comments

Subscribe to the comments RSS feed.

<< First, < Previous, Latest >>

Leave Comment

Note to Verbose Commenters
If you can't fit everything you want to say in the comment below then you really should record a response show instead.

Note to Spammers
All comments are moderated. All links are checked by humans. We strip out all html. Feel free to record a show about yourself, or your industry, or any other topic we may find interesting. We also check shows for spam :).

Provide feedback
Your Name/Handle:
Title:
Comment:
Anti Spam Question: What does the P in HPR stand for ?
Are you a spammer →
Who hosted this show →
What does HPR mean to you ?