目前簡單的跑了一些常用的模型,但是深感對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
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHL1klaNJTRU1ENNpHW3BjMMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLzkzM1MDNzcTMzADNwkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
竟然是排名第一的人,大佬大佬啊。
這篇部落格挺不錯其實,https://blog.csdn.net/dengbingfeng/article/details/51469051
裡面記錄了許多部落格連結,品質怎麼樣看看就知道了。