gpt4 book ai didi

c++ - LNK2019:OpenCV 中未解析的外部符号

转载 作者:行者123 更新时间:2023-11-30 19:03:27 25 4
gpt4 key购买 nike

我已经尝试了几天在 Windows 10 中配置 opencv 库,这真是一场噩梦!

这是我的代码:

#include <opencv2/video.hpp>
#include <opencv2/videoio.hpp>
#include <opencv2/core.hpp>
#include <opencv2/highgui.hpp>
#include <iostream>
#include <svm.h>
#include <stdio.h>

using namespace std;
using namespace cv;

int main(int argc, char** argv) {

(...)

/*2. PROCESAR VÍDEO*/

int c;
IplImage* color_img;
CvCapture* cv_cap = cvCaptureFromCAM(0);
cvNamedWindow("Video", 0); // create window
for (;;) {
color_img = cvQueryFrame(cv_cap); // get frame
if (color_img != 0)
cvShowImage("Video", color_img); // show frame
c = cvWaitKey(10); // wait 10 ms or for key stroke
if (c == 27)
break; // if ESC, break and quit
}
/* clean up */

cvReleaseCapture(&cv_cap);
cvDestroyWindow("Video");
return (EXIT_SUCCESS);
}

这是我的 Visual Studio 17 配置:

  • 在 C/C++ 中

C/C++

-在链接器中:

linker image

在链接器/输入中,我添加了以下库:

  • opencv_calib3d345d.lib opencv_core345d.lib opencv_features2d345d.libopencv_flann345d.lib opencv_highgui345d.lib opencv_imgproc345d.liblibpng.lib libtiff.lib zlib.lib IlmImf.lib libjasper.liblibjpeg-turbo.lib opencv_ml345d.lib opencv_objdetect345d.libopencv_photo345d.lib opencv_stitching345d.lib opencv_superres345d.libopencv_video345d.lib opencv_videostab345d.lib

另外:- 我有opencv 3.4.5版本- 在 x64 中运行- 在多次尝试使用 MINGW32、cygwin 和 Netbeans 后,我使用 cmake 和 VisualStudio17 构建了该库。

IDE 中没有显示错误,但编译时显示著名的错误“LNK2019 无法解析的外部符号”。我已尝试了与此主题相关的所有其他帖子的建议,但找不到解决方案。

ERROR Image

Error LNK2019 símbolo externo "class cv::Mat __cdecl cv::imread(class cv::String const &,int)" (?imread@cv@@YA?AVMat@1@AEBVString@1@H@Z) sin resolver al que se hace referencia en la función main Project1 C:\Users\Mario I\source\repos\Project1\Project1\Main.obj 1

Error LNK2019 símbolo externo cvCreateCameraCapture sin resolver al que se hace referencia en la función main Project1 C:\Users\Mario I\source\repos\Project1\Project1\Main.obj 1

Error LNK2019 símbolo externo cvQueryFrame sin resolver al que se hace referencia en la función main Project1 C:\Users\Mario I\source\repos\Project1\Project1\Main.obj 1

Error LNK2019 símbolo externo cvReleaseCapture sin resolver al que se hace referencia en la función main Project1 C:\Users\Mario I\source\repos\Project1\Project1\Main.obj 1

Error LNK1120 4 externos sin resolver Project1 C:\Users\Mario I\source\repos\Project1\x64\Debug\Project1.exe 1

最佳答案

我在 Windows 10、x64 和 Visual Studio 2015 上使用最新的预构建 OpenCV 4.0 库。我使用环境变量进行设置:

  1. setx -m OPENCV_DIR D:\Vision\opencv\build\x64\vc14
  2. 使用 - echo %OPENCV_DIR% 进行检查
  3. 对于 VS2015 调试、平台 x64,输入以下项目设置:

其他包含路径:$(OPENCV_DIR)....\include

其他库目录:%OPENCV_DIR%\lib

其他依赖项:opencv_world400d.lib;

  • 用于 VS 版本
  • 其他依赖项:opencv_world400.lib;

    小心平台设置为 x64。

    另请参阅:https://docs.opencv.org/3.0-rc1/d3/d52/tutorial_windows_install.html#tutorial_windows_install_path

    关于c++ - LNK2019:OpenCV 中未解析的外部符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53980054/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com