在 Linux 中,使用 GCC 命令進行調試通常涉及以下幾個步驟:
首先,確保已經安裝了 GCC 和 GDB(GNU 調試器)。如果沒有安裝,可以使用以下命令安裝:
對于基于 Debian 的系統(如 Ubuntu):
sudo apt-get update
sudo apt-get install build-essential gdb
對于基于 RHEL 的系統(如 CentOS、Fedora):
sudo yum groupinstall "Development Tools"
sudo yum install gdb
編寫一個簡單的 C 語言程序,例如 test.c
:
#include<stdio.h>
int main() {
int a = 5;
int b = 10;
int c = a + b;
printf("The sum of a and b is: %d\n", c);
return 0;
}
使用 GCC 編譯程序時,添加 -g
選項以包含調試信息。這將在生成的二進制文件中包含源代碼的符號信息,便于調試。例如,使用以下命令編譯 test.c
:
gcc -g test.c -o test
現在,使用 GDB 打開生成的二進制文件:
gdb ./test
在 GDB 中,可以設置斷點、單步執行、查看變量值等。以下是一些常用的 GDB 命令:
list
或 l
:顯示源代碼。break
或 b
:設置斷點。例如,break main
會在 main
函數開始處設置斷點。run
或 r
:運行程序。next
或 n
:執行下一行代碼,但不進入函數。step
或 s
:執行下一行代碼,如果是函數調用,則進入函數。continue
或 c
:從當前斷點繼續執行。print
或 p
:打印變量值。例如,print a
會顯示變量 a
的值。backtrace
或 bt
:顯示當前調用棧。quit
或 q
:退出 GDB。在完成調試后,可以使用 quit
命令退出 GDB。
這只是 GDB 功能的簡要概述。實際上,GDB 提供了許多其他命令和功能,可以幫助您更深入地了解程序的運行情況。要了解更多關于 GDB 的信息,請參閱 GDB 手冊。