numpy C語言原始碼除錯(二)
前一篇已經介紹,可以使用gdb進行除錯,但是本人不太習慣gdb的文字介面,所以希望找一個比較好用的gdb的前端gui偵錯程式。
想到的第一個是一個非常老的除錯工具,DDD。
DDD - Data Display Debugger,是一個gnu下面的圖形介面的除錯工具,DDD已經相當古老了,官網上的文件,顯示的是2004年編寫的,最早使用DDD是在Sun Solaris系統下。
在Ubuntu下面使用DDD非常簡單:
sudo apt install ddd ddd
ddd的介面相當簡單,甚至可以說是簡陋:
首先通過檔案開啟要除錯的軟體,因此我們需要開啟python3
接下來在輸入執行引數,注意需要在numpy源程式目錄執行:
在gdb中設定斷點,重新執行
然後程式執行到斷點後,自動會調出numpy的源程式,並停留在斷點處:
DDD的使用相當簡單,右側的小視窗可以步進,跟蹤。滑鼠停留在變數上面,可以自動顯示變數的值,雙擊變數,可以在上方顯示。
總體來說,使用ddd除錯還是比較輕鬆的,很短的時間就可以掌握ddd的除錯,美中不足的地方,一是沒有語法高亮提示,整體上一篇黑乎乎的程式碼,閱讀起來比較困難,二是檔案瀏覽功能比較弱,不能方便地檢視整個專案的源程式。
接下來測試其它的除錯工具。待續。