配置:
Ubuntu双系统 + Vscode + ROS2自带的opencv4
问题:
经典红色波浪线找不到头文件,编译不通过,但是鼠标右键go to definition
其实是可以打开的。
省流:
一个只知其然,不知其所以然
的解决方法:
在tasks.json
的args
里新增:
"`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`"