This site works best with JavaScript enabled
Sign In
Discussions
Activity
Sign In
All
001 C Programming, Data Structures
Issues, queries and suggestions related to C, C programming, data structures using C and C based projects.
001 C Programming, Data Structures
18. 18.Debugging With GDB
spatlou
October 2019
Please put your queries, doughts, clarifications or suggestions for
Session: 18.Debugging With GDB
here...
Debugging insertionSort.c Program using gdb
spatlou
October 2019
gcc -g insertionSort.c -o isort
...
-g compiles the insertionSort.c for debugging
-o gives optional name for the compiled program. isort in this case.
Now we are going to start gdb:
[root@localhost Arrays]# gdb isort
GNU gdb (GDB) Fedora 8.0.1-36.fc27
Copyright (C) 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <
http://gnu.org/licenses/gpl.html>
;
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<
http://www.gnu.org/software/gdb/bugs/>
.
Find the GDB manual and other documentation resources online at:
<
http://www.gnu.org/software/gdb/documentation/>
.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from isort...done.
(gdb)
spatlou
October 2019
(gdb)
...
This is the gdb prompt.
(gdb) break 25
Breakpoint 1 at 0x400699: file insertionSort.c, line 25.
...
... This puts the breakpoint at Line no 25 in out program.
... Now we can add commands to check variables in our program.
(gdb) commands
Type commands for breakpoint(s) 1, one per line.
End with a line saying just "end".
... Commands will expect you to type in some commands that you would like to use at the break point where your program breaks.
>print j
>print p
>print e
>print i
>print k
>print arr[0]@10
>end
(gdb)
.. I gave these commands as i wanted to see these variables. followed by end
spatlou
October 2019
Now going to run
(gdb) run
Starting program: /home/EmbLogic/Training/Torsha/Arrays/isort
Missing separate debuginfos, use: dnf debuginfo-install glibc-2.26-30.fc27.x86_64
Enter Values in The Array
22
44
66
88
99
77
55
33
11
65
Breakpoint 1, main () at insertionSort.c:25
25
printf("\n");
$1 = 0
$2 = 1
$3 = 44
$4 = 1
$5 = 0
$6 = {44, 44, 66, 88, 99, 77, 55, 33, 11, 65}
spatlou
October 2019
use cont
to continue
Add a Comment
Powered by
Vanilla
Howdy, Stranger!
It looks like you're new here. If you want to get involved, click one of these buttons!
Sign In
Apply for Membership
Categories
All Discussions
0
000 Linux System Administration
24
001 C Programming, Data Structures
78
002 OOPs using C++ with Eclipse on Linux
22
003 Linux System Programming
39
004 Linux Network Programming
9
005 Character Device Drivers Development
21
006.Project Evolution with GitLab
1
» 01.Introduction To GitLab
1
008 Block Device Driver Development
3
009 Embedded Linux-ARM. Storage
37
» 009.01.Linux Boot Process
27
» 009.01.14.Linux-Boot-Process
5
» 009.01.15.Introduction to BIOS
0
» 009.01.16.Introduction-to-BIOS-IQs
5
» 009.01.18.Introduction-to-BIOS-IQs
5
» 009.01.20.BIOS CMOS UEFI. IQs
5
» 02.Introduction To Embedded Linux
1
» 009.03.01.ARM Processor Architecture
1
» 009.03.02.Programmers Model
1
010 Embedded Linux ARM, Configuring and Porting using Storage
0
011 Shell Scripting using Bash
7
» 011.12.File Operations and Commands
1
012 Linux Kernel Architecture and Internals
3
014. Linux Network Administration
270
» 014.01.Intro to NW and Configurations
220
» 014.01.12.Introduction to Networking
10
» 014.01.14.Packets-IQs
10
» 014.01.16.NetworkLayers
10
» 014.01.18.The Internet Layer
20
» 014.01.20.routes and the kernel routing table
10
» 014.01.22.The Default Gateway
5
» 014.01.24.IPv6 Addresses And Networks
20
» 014.01.26.Basic ICMP And DNS Tools
10
» 014.01.28.The Physical Layer And Ethernet
5
» 014.01.30.Understanding Linux Network Interface
5
» 014.01.32.Intro To Network Interface Configuration
5
» 014.01.34.Boot Activated Network Configuration
5
» 014.01.36.Manual and Boot Activated Nw Config
5
» 014.01.38.Network Configuration Managers
10
» 014.01.40.Resolving Hostnames
19
» 014.01.42.The Transport Layer TCP UDP Services.
10
» 014.01.44.Understanding DHCP
5
» 014.01.46.Automatic IPv6 Network Configuration. IQs
5
» 014.01.48.Configuring Linux as Router
5
» 014.01.50.Private Networks IPv4
5
» 014.01.52.Network Address Translation. IP Masquerading
5
» 014.01.54.Routers And Linux
5
» 014.01.56.Linux Firewall Basics
5
» 014.01.58.Setting Firewall Rules
5
» 014.01.60.Firewall Strategies
10
» 014.01.62.Ethernet-IP-ARP-NDP-IQs
5
» 014.01.64.Wireless Ethernet
5
» 014.02.Network Applications and Services
11
» 014.02.12.Basics of Services
3
» 014.02.14.Introduction to Network Servers
2
» 014.02.16.Network Servers. Secure Shell
5
» 014.06.Network Protocol Telnet
38
» 014.06.12.Introduction-To-Telnet
3
» 014.06.14.General Working. Telnet
5
» 014.06.16.General-Working-Telnet
5
» 014.06.18.Network Virtual Terminal
3
» 014.06.20.More About Telnet
3
» 014.06.22.Installing Telnet on Fedora
5
» 014.06.24.Telnet Commands-Fedora
3
» 014.06.26.Using Telnet in Linux
5
» 014.06.28.Secure telnet with FirewallD. Fedora.
3
» 014.06.30.Using Telnet in Linux
2
015 Python with Eclipse on Linux
27
101 Advanced Data Structures using C
18
105 Parallel Port Device Drivers Development
5
205 Serial Port Device Drivers Development
3
303 Linux System Programming
32
Project 22. Ethernet Network Device Driver Development
0
Query
555
Project.203 Linux System Programming. MySQL
0
Pravjot Sir Classes
160
Events at EmbLogic
2
Project 16: SPI Device Driver Development
2
Project 17: I2C Device Driver Development
0
Project 18: PCI Device Driver Development
0
Project 19: Embedded Linux on ARM Using Network TFTP
0
Project 20: CAN Bus Protocol and Driver Development
0
Project 21: USB Device Drivers Development
0
Embedded Linux
0
ARM Embedded Processor
0
Training
2
Members Area
1
Word From Admin
1