天天看點

caffe深入學習---學習GDB調試

目前簡單的跑了一些常用的模型,但是深感對caffe了解還是不夠,是以繼續深入學習caffe.

首先,參考了知乎的一個回答,深度學習caffe的代碼怎麼讀? Gein Chen,準備就按照人家的流程走一下,希望能夠多學點東西。

1.程式跑起來,已經實作了

2.caffe單步調試。參考caffe使用gdb單步調試及源碼閱讀,這一篇寫的很詳細,很貼心。

要調試,準備用gdb,那麼就學習一下,參考部落格,linux下如何使用gdb調試,看看有沒有英文原版的介紹吧。果然有,先崇尚原汁原味的吧:Debugging Under Unix: gdb Tutorial先看這個,這個什麼玩意,不好。知道了,這個檔案是個老檔案,得修改一下:

頭檔案:

#include <iostream>

還要在主函數前面加上,

using namespace std

,不然程式會報錯。

然後輸入

make

編譯檔案,使其産生main的可執行程式,然後才能夠被gdb調用,但是,這個英文參考卻沒有說,真是可惡,幸虧我機智,想了一下。好了,現在可以繼續看了。這個是最基本的,很快就看完了。

然後再看這個, GDB Debugger Command Cheat Sheet,開幹。

這兩個都看了一下,涉及到的内容很基本,很少。。而且這兩個網址的操作可能比較舊了,第一個都十幾年之前寫的個程式,第二個有個指令都還用不了,我估計是gdb更新了,導緻有些指令跟之前不一樣了。

于是,我打開了我電腦上gdb對應版本推薦的網址:http://www.gnu.org/software/gdb/documentation/ 裡面東西挺多的。就暫時先了解了一下基本的,後面有空有需要再詳細看看吧。

剛才看了也不能白看,起碼得自己調試個自己的代碼試試。

剛才查了一下,g++ 與gcc的差別聯系,簡單來說,他們都是編譯器,gcc範圍廣,可以調試c, c++等語言,而g++特指調試c++語言的,用它調試c++更加強大友善,是以獨立出來了。

學習一下ldd的用法:

https://blog.csdn.net/stpeace/article/details/47069215

caffe深入學習---學習GDB調試

竟然是排名第一的人,大佬大佬啊。

這篇部落格挺不錯其實,https://blog.csdn.net/dengbingfeng/article/details/51469051

裡面記錄了許多部落格連結,品質怎麼樣看看就知道了。

繼續閱讀