ubuntu vscode CMakeLists 断点调试

注:沿袭原有的习惯,手动创建工程及build并完成编译工作,后续描述是基于已经能完成编译工作的基础上进行。

第一步:修改CMakeList.txt文件

设置

set(CMAKE_BUILD_TYPE DEBUG)

发布时修改为

set(CMAKE_BUILD_TYPE RELEASE)

修改完成后重新编译

第二步:配置vs code

Terminal-Configure Default Build Task,选择C/C++: G++ 生成活动文件(没有深究是否必须,大概率是可以不要,但是我做了)

ubuntu vscode CMakeLists 断点调试_第1张图片

点一下上图那个齿轮,生成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": "g++ - 生成和调试活动文件",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/build/bin/shmcreat",//修改此处到生成的可执行文件位置
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "将反汇编风格设置为 Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "C/C++: g++ 生成活动文件",
            "miDebuggerPath": "/usr/bin/gdb"
        }
    ]
}

 按照默认生成,只修改了program一处,我生成的可执行文件名为shmcreat,

第三步:

回到vs code中,给源程序打断点就可以进行调试了

你可能感兴趣的:(ubuntu,vscode,linux)