我已经安装了 OpenCV 3.10 并链接了 opencv_world310.lib
至 release
和 opencv_world310d.lib
调试。
此外,我将编译器选项放在搜索目录中 ...opencv\build\include
.当我遗漏 #include <opencv2/highgui.hpp
时出现 undefined reference 错误.现在我已经包含了它,我的代码如下所示:
#include <stdio.h>
#include "opencv/cv.h"
#include "opencv/highgui.h"
#include <opencv2/highgui.hpp>
int main(void){
printf("HALLO!");
return 0;
}
当我尝试构建它时,core.hpp 打开并且 error: core.hpp must be compiled in C++
发生。
我在 Codeblocks 中使用 GNU GCC 编译器。
我应该怎么做才能解决这个问题?
最佳答案
检查编译器选项。 Open CV 3.10 C++ API 要求将代码编译为 C++,而不是 C。您可以使用对 "CodeBlocks: change project language c and c++" 的回答问题来更改选项。
同时使用新的 Open CV 3.10 API
#include <opencv2/opencv.hpp>`
而不是所有其他 Open CV 头文件。此 header 包括核心功能。要启用 highgui 模块,您需要在项目设置中定义 HAVE_OPENCV_HIGHGUI
。
关于c++ - OpenCV3.10 core.hpp必须用C++编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39586623/