vscode下調試caffe源碼


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 ;可以直接調試;

rjw@rjw:~/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 free software: 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 ;

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) Launch",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/build/tools/caffe",
            "args": ["train","--solver","${workspaceFolder}/examples/mnist/lenet_solver.prototxt"],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": true,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ]
        }
    ]
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM