vscode下除錯caffe原始碼
阿新 • • 發佈:2019-01-03
caffe目錄:
├── build -> .build_release // make生成目錄,生成各種可執行bin檔案,直接呼叫入口; ├── cmake ├── CMakeLists.txt ├── CONTRIBUTING.md ├── CONTRIBUTORS.md ├── data ├── distribute ├── docker ├── docs ├── examples //很多demo可以嘗試使用; ├── include ├── INSTALL.md ├── LICENSE ├── Makefile ├── Makefile.config ├── Makefile.config.example ├── matlab ├── models ├── python ├── README.md ├── scripts ├── src // src/caffe/solver.cpp,net.cpp,layer.cpp,blob.cpp等核心函式; └── tools //主要使用caffe.cpp,進行呼叫src下面各個子函式;另外tools/extra下提供一些輔助函式
1. 使用gdb直接除錯工程
配置參考:Caffe原始碼除錯
主要開啟:修改Makefile.config:DEBUG := 1 ;生成如下目錄:
lrwxrwxrwx 1 root root 12 1月 3 16:37 build -> .build_debug/ drwxr-xr-x 12 root root 4096 1月 3 16:37 .build_debug/ drwxr-xr-x 12 root root 4096 1月 3 16:37 .build_release/
使用GDB啟動除錯,執行gdb --args build/tools/caffe train --solver examples/mnist/lenet_solver.prototxt ;可以直接除錯;
[email protected]:~/caffe$ gdb --args build/tools/caffe train --solver examples/mnist/lenet_solver.prototxt GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.5) 7.11.1 Copyright (C) 2016 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is freesoftware: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>. Find the GDB manual and other documentation resources online at: <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from build/tools/caffe...(no debugging symbols found)...done. (gdb) (gdb) q
2. 使用Vscode進行除錯:
配置c_cpp_properties.json 和launch.json ;