配置编译环境和开发环境

配置编译环境和开发环境

编译环境

新建文件夹 test

mkdir test

打开VScode

新建文件 test.cpp

编写一端包含opencv的调试代码

eg:

#include <iostream>
#include <opencv4/opencv2/opencv.hpp>

using namespace cv;
using namespace std;

int main(int argc, char** argv)
{
    
    return 0;
}

F5 运行程序,会提示选择环境。

依次选择

C++(GDB/LLDB)
g++ - Build and debug active file

然后在左边会生成一个 .vscode 文件夹,里面包含 launch.jsontasks.json 两个文件

launch.json 文件修改如下:

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "g++ - 生成和调试活动文件",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}/${fileBasenameNoExtension}",//程序文件路径
            "args": [],//程序运行需要传入的参数
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": true,//是否为调试对象启动控制台
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "C/C++: g++ 生成活动文件",
            "miDebuggerPath": "/usr/bin/gdb"
        }
    ]
}

tasks.json 文件修改如下

{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: g++ 生成活动文件",//与launch.json文件里的preLaunchTask的内容保持一致 
            "command": "/usr/bin/g++",
            "args": [
                //"-fdiagnostics-color=always",
                "-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": "调试器生成的任务。"
        }
    ],
    "version": "2.0.0"
}

注: 其中label的值必须与launch.json中preLaunchTask的值一样

此时再按 F5 程序可以正常编译执行

开发环境

按下

Crtl+Shift+P

打开命令面板

选择

C/C++:Edit Configurations(JSON)

会在左侧 .vscode 文件夹里生成 c_cpp_properties.json 文件

c_cpp_properties.json 文件修改如下

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

这个文件将opencv的头文件所在路径和函数库路径告诉编译器

参考:
https://blog.csdn.net/weixin_43374723/article/details/84064644
https://zhuanlan.zhihu.com/p/363035298
https://blog.csdn.net/formaever/article/details/120497371

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>