根据此视频https://www.youtube.com/watch?v=l4372qtZ4dc 我正在尝试在vscode中使用OpenCV,但无法包含.lib文件,该怎么办
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main( int argc, char** argv )
{
if( argc != 2)
{
cout <<" Usage: display_image ImageToLoadAndDisplay" << endl;
return -1;
}
Mat image;
image = imread(argv[1], CV_LOAD_IMAGE_COLOR); // Read the file
if(! image.data ) // Check for invalid input
{
cout << "Could not open or find the image" << std::endl ;
return -1;
}
namedWindow( "Display window", WINDOW_AUTOSIZE );// Create a window for display.
imshow( "Display window", image ); // Show our image inside it.
waitKey(0); // Wait for a keystroke in the window
return 0;
}
PS C:\ Users \ giorg \ Documents \ Development \ Tests \ node-addons-test \ src \ examples> g ++ * .cpp main.cpp:1:33:致命错误:opencv2 / core / core.hpp:没有这样的文件或目录 #包括 ^ 编译终止。
我设法包含dll,但是找不到如何扩展名为.lib的文件。
这是我的c_cpp_properties.json文件
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**",
"${workspaceFolder}/src/lib",
"C:\\openCV\\opencv\\build\\include",
"C:\\openCV\\opencv\\build\\x64\\vc15\\lib" <=== this is the problem , how to include this
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"windowsSdkVersion": "10.0.17134.0",
"compilerPath": "C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.14.26428/bin/Hostx64/x64/cl.exe",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "msvc-x64"
}
],
"version": 4
}
答案 0 :(得分:1)
为什么不通过添加CMakeLists.txt使用cmake,它也跨平台且易于使用。 我也使用VS Code。而且我建议使用cmake。
答案 1 :(得分:0)
要包含.lib文件,您应该访问项目的属性=> linker => entries =>其他依赖项,然后添加.lib文件properties of project
答案 2 :(得分:0)
当您使用 CMake 时,您使用的编辑器/IDE 并不重要。 在 CMake 中有很多方法可以添加外部库:
向项目添加外部库的最简单方法之一是子模块。只需搜索子模块并学习它,然后您就可以轻松使用项目中的任何库。
这是一个 .cmake 文件,您可以使用它更轻松地进行子模块化 https://www.scivision.dev/cmake-git-submodule/
以及这里的教程:
https://web.archive.org/web/20210703145609/https://github.blog/2016-02-01-working-with-submodules/