C--valgrind

     1.簡介

    Valgrind工具集提供一系列調試和分析工具,使用戶的程序運行更快更正確。其中最流行的工具是Memcheck,它能夠檢測到在C/C++程序中可能導致崩潰和不可預測的諸多內存相關錯誤!

     2.程序準備

    使用Gcc編譯器,同時加上-g參數進行;以使Memcheck發現的錯誤能包含準確的行號。儘量不要使用-O+優化等級數的形式進行優化,這可能導致程序運行更緩慢,或者導致產生不準確的錯誤信息。

     3.運行程序

運行方式:

   如果你的程序運行的方式爲:  program   arg1  arg2

那麼使用命令行的形式:

         valgrind   --leak-check=yes  program arg1  arg2

如:valgrind    ./example                        //valgrind 的命令參數可自行選擇

valgrind運行的消息顯示形式

 

消息形式爲

    ==pid==        some-message-from-Valgrind        

     4.valgrind命令常用參數:

--leak-check  = yes    開啓 內存泄漏檢測

--tool=[tools_of_valgrind]            

--gen-suppressions=yes   開啓錯誤抑制,防止產生過多無關的錯誤

--log-file=[filename]     將日誌消息寫入指定的文件中

     5.valgrind提供的其他工具

valgrind軟件包提供諸多的工具在不同的方面對程序進行調試和分析,常見的插件工具有:

  Memcheck:內存錯誤檢測器,查找一些隱藏的bugs,是系統默認的工具

  Cachegrind :緩存和分支預測分析器,使用戶成尋運行更快

  Helgrind:多線程錯誤檢測器

  Massif:堆棧分析器,使用戶程序佔用更少的內存

其他工具有:Callgrind、DRD、DHAT、SGcheck、BBV等

     6.valgrind的安裝

官網地址:http://valgrind.org/     下載相應的安裝包

        #tar -jzf  valgrind-xxxxxx.tar.bz2

        #cd  valgrind-xxxxx

        #./configrue                 //缺少相關的依賴,請自行處理!

        #make

        #make install

                                                                                                                            ------完畢!

 

 

    

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章