歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> 更多Linux >> Linux環境下用GDB調試 GCC 程序(一)

Linux環境下用GDB調試 GCC 程序(一)

日期:2017/2/27 9:39:04   编辑:更多Linux

Linux 包含了一個叫 gdb 的 GNU 調試程序. gdb 是一個用來調試 C 和 C++ 程序的強力調試器. 它使你能在程序運行時觀察程序的內部結構和內存的使用情況. 以下是 gdb 所提供的一些功能:     它使你能監視你程序中變量的值.     它使你能設置斷點以使程序在指定的代碼行上停止執行.     它使你能一行行的執行你的代碼.     在命令行上鍵入 gdb 並按回車鍵就可以運行 gdb 了, 如果一切正常的話, gdb 將被啟動並且你將在屏幕上看到類似的內容:     GDB is free software and you are welcome to distribute copies of it  under certain conditions; type "show copying" to see the conditions.  There is absolutely no warranty for GDB; type "show warranty" for details.  GDB 4.14 (i486-slakware-linux), Copyright 1995 Free Software Foundation, Inc.  (gdb)     當你啟動 gdb 後, 你能在命令行上指定很多的選項. 你也可以以下面的方式來運行 gdb :   gdb     當你用這種方式運行 gdb , 你能直接指定想要調試的程序. 這將告訴gdb 裝入名為 fname 的可執行文件. 你也可以用 gdb 去檢查一個因程序異常終止而產生的 core 文件, 或者與一個正在運行的程序相連. 你可以參考 gdb 指南頁或在命令行上鍵入 gdb -h 得到一個有關這些選項的說明的簡單列表.     為調試編譯代碼(Compiling Code for Debugging)     為了使 gdb 正常工作, 你必須使你的程序在編譯時包含調試信息. 調試信息包含你程序裡的每個變量的類型和在可執行文件裡的地址映射以及源代碼的行號. gdb 利用這些信息使源代碼和機器碼相關聯. 在編譯時用 -g 選項打開調試選項.     gdb 基本命令     gdb 支持很多的命令使你能實現不同的功能. 這些命令從簡單的文件裝入到允許你檢查所調用的堆棧內容的復雜命令, 表1列出了你在用 gdb 調試時會用到的一些命令.     表1. 基本 gdb 命令.     命 令 描 述   file 裝入想要調試的可執行文件   kill 終止正在調試的程序   list 列出產生執行文件的源代碼的一部分   next 執行一行源代碼但不進入函數內部   step 執行一行源代碼而且進入函數內部   run 執行當前被調試的程序   quit 終止 gdb   watch 使你能監視一個變量的值而不管它何時被改變   break 在代碼裡設置斷點, 這將使程序執行到這裡時被掛起   make 使你能不退出 gdb 就可以重新產生可執行文件   shell 使你能不離開 gdb 就執行 UNIX shell 命令     gdb 支持很多與 UNIX shell 程序一樣的命令編輯特征. 你能象在 bash 或 tcsh裡那樣按 Tab 鍵讓 gdb 幫你補齊一個惟一的命令, 如果不惟一的話 gdb 會列出所有匹配的命令. 你也能用光標鍵上下翻動歷史命令.




Copyright © Linux教程網 All Rights Reserved