OpenCV installation, unresolved external symbols
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
OpenCV: link error, can’t resolve external symbol _cvResize and _cvCvtColor
What is an undefined reference/unresolved external symbol error and how do I fix it?
我已经尝试了他们网站上所有的教程,以及StackOverflow上的解决方案,但是我仍然找不到解决方案。
我已经做的:
1-添加了包含标题的文件夹。
2-将lib文件夹添加到附加lib目录中
3-将opencv_core243d.lib和opencv_highgui243d.lib添加到其他依赖项。
我试图编译的代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | #include <stdio.h> #include <cv.h> #include <highgui.h> int main(int argc, char* argv[]) { if (argc < 2) { printf("Usage: ./opencv_hello <file.png> "); return -1; } IplImage* img = cvLoadImage(argv[1], CV_LOAD_IMAGE_UNCHANGED); if (!img) { return -1; } cvNamedWindow("display", CV_WINDOW_AUTOSIZE); cvShowImage("display", img ); cvWaitKey(0); return 0; } |
链接器提供有关未解析符号(如cvLoadImage、cvWaitKey等)的错误。我唯一能想到的就是伦敦银行同业拆借利率,但我已经把它们包括在内了。
据我所知,您使用的是opencv 2.4
在这种情况下,我想建议使用C++接口。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | #include <stdio.h> #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> int main(int argc, char* argv[]) { if (argc < 2) { printf("Usage: ./opencv_hello <file.png> "); return -1; } cv::Mat img = imread(argv[1]); if (img.empty()) { return -1; } imshow("display", img); waitKey(0); <---- cvWaitKey() is a C interface functio, waitKey() - C++ return 0; } |