ubantu系统配置vscode中对opencv的调试环境


参考帖子:
帖子1
帖子2

前言

本人是个vscode小白害怕配环境,但无奈不用调试找bug太麻烦了。于是就在csdn搜集资料。帖子还是很多的,但复制粘贴到自己的电脑上总是会觉得,自己的vscode怎么跟别人的不一样/(ㄒoㄒ)/~~
折腾了一下午,总算搞定了。幸亏成功了,不然我的心态可能就爆炸了。。。

步骤

1、创建并编辑aunch.json

打开左侧的“调试”,点击新建launch.json文件夹。
在这里插入图片描述

或者点击上方任务栏的 运行 —>新建配置文件,则在资源管理器中建立了一个.vscode文件夹。在这里插入图片描述
将里面替换成以下代码

{
    // 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++ - Build and debug active file",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}/${fileBasenameNoExtension}",  //程序文件路径
            "args": [],  //程序运行需传入的参数
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": true,   //运行时是否显示控制台窗口
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "C/C++: g++ build active file",
            "miDebuggerPath": "/usr/bin/gdb"
        }
    ]
}

2、创建tasks.json

在上一步的基础上,将窗口切换至test.cpp,并按F5,得到下图1
图1
点击配置任务后,得到下图2

图2
点击使用模板创建tasks.json文件,得到图三,并选择Others
图3
则创建了tasks.json,将里面的代码替换为

{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: g++ build active file",  /* 与launch.json文件里的preLaunchTask的内容保持一致 */
            "command": "/usr/bin/g++",
            "args": [
                "-std=c++11",
                "-g",
                "${file}",   /* 编译单个文件 */
                //"${fileDirname}/*.cpp",  /* 编译多个文件 */
                "-o",
                "${fileDirname}/${fileBasenameNoExtension}",  /* 输出文件路径 */
 
                /* 项目所需的头文件路径 */
                "-I","${workspaceFolder}/",
                "-I","/usr/local/include/",
                "-I","/usr/local/include/opencv4/",
                "-I","/usr/local/include/opencv4/opencv2",
 
                /* 项目所需的库文件路径 */
                "-L", "/usr/local/lib",
 
                /* OpenCV的lib库 */
                "/usr/local/lib/libopencv_*",
 
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "Task generated by Debugger."
        }
    ],
    "version": "2.0.0"
}

3、配置c_cpp_properties.json

在.vscode文件夹下新建一个文件,取名为c_cpp_properties.json
写入以下代码:

{
    "configurations": [
        {
            "name": "Linux",
            "includePath": [
                "${workspaceFolder}/**",
            
                "/usr/local/include/opencv4"
            ],
            "defines": [],
            "compilerPath": "/usr/bin/gcc",
            "cStandard": "gnu11",
            "cppStandard": "gnu++14",
            "intelliSenseMode": "linux-gcc-x64"
        }
    ],
    "version": 4
}

保存后,打开test.cpp,按F5,即可调试

结果图

在这里插入图片描述
ps:记得设置断点哟

反思

之前配置vsode环境都是跟着保姆教程来,也没搞懂究竟做了些啥,导致每次配置都会浪费很多时间。还是得抽空把vscode的基本配置知识,一些基本参数熟悉一下。

`tasks.json` 文件通常是在 Visual Studio Code (VSCode) 用于配置任务的 JSON 格式文件。它主要用于自动化构建、测试和部署过程,特别是在使用诸如 Node.js、Python 或 C++ 等语言的项目。这个文件不是底层文件,而是由开发者自动生成或手动编辑,以便定义项目的特定任务,如编译、运行单元测试等。 要生成 `tasks.json`,你可以按照以下步骤操作: 1. 如果你使用的是 VSCode 的内置任务管理系统 "Tasks" 功能,可以右键点击 `.vscode/tasks.json` 文件(如果存在),选择 "Run Task" 或者通过命令 palette (Ctrl + Shift + P) 运行 `Tasks: Configure Tasks`,然后根据提示配置你想执行的任务。 2. 如果你有特定的脚本或构建工具,例如 Gulp、Webpack 或 Makefile,你可以根据对应文档创建任务,将它们的命令集成到 `tasks.json` 。 对于 OpenCV 项目,在 VSCode 设置工作区关联(Workspace Linking)以链接 OpenCV 的库和头文件,你需要做如下操作: 1. 首先,安装适当的插件,如 "C/C++" 插件,这将帮助管理编译环境。 2. 打开 `settings.json` 文件(`File > Preferences > Settings`),在其添加路径配置: ```json { "c_cpp_properties": { "configurations": [ { "name": "Mac", "includePath": [ "${workspaceFolder}/**", // 包含所有 workspace 目录下的 .h 和 .cpp 文件 "${env:OPENCV_DIR}/include" // 替换为你的 OpenCV 安装路径 ], ... } ] } } ``` 3. 对于链接库,你可能需要在 `launch.json` 或 `tasks.json` 设置 `args` 或 `command` 属性,指向 OpenCV 库,示例: ```json { "args": ["-lopencv_core", "-lopencv_highgui"], ... } ``` 记得替换上述示例的 `${env:OPENCV_DIR}` 为实际的 OpenCV 安装目录。这样,VSCode 就能识别并支持你的 OpenCV项目了。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值