Linux下C 的的開發和除錯執行工具

2021-06-27 15:04:54 字數 1565 閱讀 2547

gnu ddd(data display debugger)是命令列除錯程式,如gdb、dbx、wdb、ladebug、jdb、xdb、perl debugger或python debugger的視覺化圖形前端。它特有的圖形資料顯示功能(graphical data display)可以把資料結構按照圖形的方式顯示出來。

ddd最初源於2023年andreas zeller編寫的vsl結構化語言,後來經過一些程式設計師的努力,演化成今天的模樣。ddd的功能非常強大,可以除錯用c\c++ 、ada、fortran、pascal、modula-2和modula-3編寫的程式;可以超文字方式瀏覽源**;能夠進行斷點設定、回溯除錯和歷史紀錄編輯;具有程式在終端執行的**視窗,並在遠端主機上進行除錯的能力;圖形資料顯示功能(graphical data display)是建立該偵錯程式的初衷之一,能夠顯示各種資料結構之間的關係,並由此將資料結構以圖形化形式顯示;具有gdb/dbx/xdb的命令列介面,包括完全的文字編輯、歷史紀錄、搜尋引擎。

1. c/c++編譯器 gcc/g++     

詳情請參考**:

2. uml建模工具 bouml

linux下比較好用的建模工具,相當於windows下的rational rose,具成了程式uml模型設計,**編輯,**生成功能等功能.

詳情請參考**:

3. makefile檔案編寫工具 :autoconf,automake

無論是在linux還是在unix環境中,make都是乙個非常重要的編譯命令。不管是自己進行專案開發還是安裝應用軟體,

我們都經常要用到make或 make install。利用make工具,我們可以將大型的開發專案分解成為多個更易於管理的模組,

對於乙個包括幾百個原始檔的應用程式,但是如果通過查閱make的幫助文件來手工編寫makefile,對任何程式設計師都是一場挑戰。

幸而有gnu 提供的autoconf及automake這兩套工具使得編寫makefile不再是乙個難題

使用make和 makefile工具就可以輕而易舉的理順各個原始檔之間紛繁複雜的相互關係,autoconf,automake一般配合libtool使用。

詳情請參考**:

4. 除錯工具:gdb 

在window下程式設計,除錯工具已經具成到vs環境,在linux/unix下除錯則通過gdb來除錯,個人覺得gdb除錯比vs除錯高效很多。

詳情請參考**:

5. 記憶體洩漏工具:valgrind

對於動則成千上萬行的**,很難通過手工的方式去保證記憶體沒有洩漏,

valgrind通過記憶體申請、釋放匹配的原則來檢測記憶體洩漏,記憶體越界的bug。當然,良好的程式設計習慣也是保證**質量高效必不可少的條件。

參考**:

6. 源**管理工具:svn

軟體開發不再是個人大師的年代,都是以團隊的方式來開發,如何保證**的同步,協同開發,svn給我們提了很好的幫助。

詳情請參考**:

7. 網路協議分析工具:wireshark

編寫網路程式,就不可避免要處理網路協議,分析網路資料.wireshark提供了關於網路層和上層協議的各種資訊。

命令列下分析網路協議可以使用tcpdump.

詳情請參考**:

linux下的C語言開發(gdb除錯)

編寫 過程中少不了除錯。在windows下面,我們有visual studio工具。在linux下面呢,實際上除了gdb工具之外,你沒有別的選擇。那麼,怎麼用gdb進行除錯呢?我們可以一步一步來試試看。cpp view plain copy include int iterate int value...

linux下的C語言開發(gdb除錯)

平凡的程式設計師 編寫 過程中少不了除錯。在windows下面,我們有visual studio工具。在linux下面呢,實際上除了gdb工具之外,你沒有別的選擇。那麼,怎麼用gdb進行除錯呢?我們可以一步一步來試試看。cpp view plain copy include intiterate i...

linux下的C語言開發 gdb除錯

編寫 過程中少不了除錯。在windows下面,我們有visual studio工具。在linux下面呢,實際上除了gdb工具之外,你沒有別的選擇。那麼,怎麼用gdb進行除錯呢?我們可以一步一步來試試看。include int iterate int value int main 既然需要除錯,那麼生...