本人在编译过程中走了很多坑,看了很多博客,找到了一些解决办法,希望分享给大家。
由于需要是毕设,时间紧迫,所以我最后还是放弃了编译OpenCV4.2,改用了其他版本,祝大家都能顺利成功!
编译步骤参考:https://github.com/appleshowc/deployOpencv340
BUG1:logtagconfigparser.cpp:301:21: error: no member named ‘to_string’ in namespace ‘std’.
本人在国内很多博客上查到的问题原因是:mingw自身的bug,可以通过增加补丁或者升级到更高的版本(更高的版本已修复这个问题),但在我的实际应用中,这两个方法均没有用,然后我打开谷歌,搜索到了这个方法,直接解决。
核心就是替换to_string函数,庆幸的是,只有这一个地方需要替换。
BUG2:缺少boostdesc_bgm.i文件
解决办法参见:https://www.jianshu.com/p/1c9978145022
BUG3:test_rotation_and_scale_invariance.cpp中找不到#include "xxxx/test_detectors_invariance.impl.hpp" 缺少头文件错误
解决办法参见:https://www.jianshu.com/p/1c9978145022
BUG4:fatal error: opencv2/reg.hpp: No such file or directory
#include "opencv2/reg.hpp"
解决办法:找到对应的文件,将这行代码注释掉
https://github.com/appleshowc/deployOpencv340
BUG5:这个BUG没有解决,直接突破了我的心理防线,如果大家有遇到类似的,请多多指点。
In file included from D:\OpenCV\build\armeabi-v7a\modules\java_bindings_generator\gen\cpp/opencv_jni.hpp:28:0,
from D:\OpenCV\opencv-4.2.0\sources\modules\java\generator\src\cpp\opencv_java.cpp:8:
D:\OpenCV\build\armeabi-v7a\modules\java_bindings_generator\gen\cpp\xfeatures2d.inl.hpp:12:35: fatal error: opencv2/xfeatures2d.hpp: No such file or directory
#include "opencv2/xfeatures2d.hpp"
^
compilation terminated.
mingw32-make[2]: *** [modules\java\jni\CMakeFiles\opencv_java.dir\build.make:131: modules/java/jni/CMakeFiles/opencv_java.dir/__/generator/src/cpp/opencv_java.cpp.o] Error 1
mingw32-make[1]: *** [CMakeFiles\Makefile2:8560: modules/java/jni/CMakeFiles/opencv_java.dir/all] Error 2
mingw32-make: *** [Makefile:179: all] Error 2