Ubuntu下使用ROS2自带的opencv4,VScode error: opencv2/opencv.hpp: No such file or directory.

配置:

Ubuntu双系统 + Vscode + ROS2自带的opencv4

问题:

经典红色波浪线找不到头文件,编译不通过,但是鼠标右键go to definition其实是可以打开的。

省流:

一个只知其然,不知其所以然的解决方法:
tasks.jsonargs里新增:

"`pkg-config",
"--cflags",
"--libs",
"opencv4`"

就可以编译通过了。

源代码:

#include <stdio.h>
#include <opencv2/opencv.hpp>

using namespace cv;
int main(int argc, char** argv )
{
    
    
    if ( argc != 2 )
    {
    
    
        printf("usage: DisplayImage.out <Image_Path>\n");
        return -1;
    }
    Mat image;
    image = imread( argv[1], 1 );
    if ( !image.data )
    {
    
    
        printf("No image data \n");
        return -1;
    }
    namedWindow("Display Image", WINDOW_AUTOSIZE );
    imshow("Display Image", image);
    waitKey(0);
    return 0;
}

c_cpp_properties.json文件:

新增了/usr/include/opencv4/**"
在这里插入图片描述

解决:

tasks.json的args里新增:

"`pkg-config",
"--cflags",
"--libs",
"opencv4`"

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_45910027/article/details/130136615
今日推荐