首先,我要祝贺所有帮助使这个网站如此独特和有用的人。
在这个简短的介绍之后是我的问题:
我正在尝试在 Ubuntu 12.04(32 位)上编译最新的 OpenCV 版本,但我总是遇到以下错误:
**/home/srt/opencv/modules/core/src/gpu_info.cpp:468:34: error: no hay una función miembro ‘int cv::gpu::DeviceInfo::minor() const’ declarada en la clase ‘cv::gpu::DeviceInfo’**
cc1plus: aviso: no se reconoce la opción de línea de órdenes "-Wno-unnamed-type-template-args" [activado por defecto]
cc1plus: aviso: no se reconoce la opción de línea de órdenes "-Wno-delete-non-virtual-dtor" [activado por defecto]
cc1plus: aviso: no se reconoce la opción de línea de órdenes "-Wno-narrowing" [activado por defecto]
make[2]: *** [modules/core/CMakeFiles/opencv_core.dir/src/gpu_info.cpp.o] Error 1
make[2]: *** Se espera a que terminen otras tareas....
cc1plus: aviso: no se reconoce la opción de línea de órdenes "-Wno-unnamed-type-template-args" [activado por defecto]
cc1plus: aviso: no se reconoce la opción de línea de órdenes "-Wno-delete-non-virtual-dtor" [activado por defecto]
cc1plus: aviso: no se reconoce la opción de línea de órdenes "-Wno-narrowing" [activado por defecto]
make[1]: *** [modules/core/CMakeFiles/opencv_core.dir/all] Error 2
make: *** [all] Error 2
我尝试卸载 FFMPEG 并使用不同的 cmake 标志,但没有任何变化。我也尝试在网上搜索相关问题,但我只找到了 FFMPEG 推荐,但没有找到 gpu_info.cpp。这个文件是编译所必需的,还是我应该尝试以某种方式将它排除在外?
(我按照本教程安装了所有必要的文件:http://www.ozbotz.org/opencv-installation/ 在这里我发现了一个类似的问题,但没有一个建议对我有用:http://stackoverflow.com/questions/16321616/opencv-2-4-5-make-error )
提前致谢。
最佳答案
您正在使用 master 分支。这是下一个主要版本的开发者分支。因此它包含新功能、API 更改并且可能不稳定。如果您想使用 OpenCV 的稳定版本,请使用 2.4 分支或 2.4.x 版本。
至于这个错误,有一个 pull request with patch to fix gpu_info.cpp
编译:
https://github.com/Itseez/opencv/pull/1036 .但它还没有合并。
更新
您可以将此修复合并到您的存储库中:
git remote add jet47 git@github.com:jet47/opencv.git
git fetch jet47
git merge jet47/fix-gpu-deviceinfo
关于opencv 2.4.5 编译错误(gpu_info.cpp),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17274263/