参考 https://www.cnblogs.com/LiuSY/p/5808210.html
工程GMS-Feature-Matcher-master
需要opencv
1、直接编译,报错,如下图
2、根据提示上图报错,找不到OpenCVConfig.cmake文件,且错误说set OpenCV_DIR,如下图设置了OpenCV_DIR,这下面
/***题外补充/
需要找变量${OpenCV_INCLUDE_DIRS} ${OpenCV_LIBS}
两个工程之间是通过cmake通信的,GMS-Feature-Matcher-master需要opencv的头文件和库文件,因此在opencv的build好的下找OpenCVConfig.cmake
如上图,opencv的OpenCVConfig.cmake里定义了GMS-Feature-Matcher-master中Cmakelist中的变量OpenCV_INCLUDE_DIRS, OpenCV_LIBS
GMS-Feature-Matcher-master添加路径设置,如下图,这样子两个工程之间由cmake连接
/*********题外补充完结/
3、2中修改完,再cmake-gui重新编译,出错如下:
因为当时编译opencv时, opencv_hdf文件没有build成功。为了解决这个问题,注释掉install/下所有cmakeconfige的hdf,注意是所有!
注释文件
4、3修改完后,重新编译,报错:
因此再注释掉相应文件中的opencv_hdf,具体如下:
5、4完后,报错如下,当时为了备份,copy了副本
6、删掉这些副本,再次编译
成功了,但还有红色,再次confige,如下图:
成功,如下图:
然后,generator,如下图:
成功了,如下图:
7、生成成功后,查看如下路径:
打开.sln,右击ALL_BUILD-生成,如下图
生成完毕,如下图
7,运行exe
运行exe后报错,如下,可能是数据加载路径,exe会根据相对路径加载,.cpp为…/data/“0.jpg”,因此将data文件夹拷贝到与exe满足相对路径的位置
拷贝data后,如下:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190409235827430.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI5MjMwMzQ5,size_16,color_FFFFFF,t_70
8、7修改完后,再次运行exe后报错,缺少…dll,从opencv build好的路径下拷贝相应dll到GMS 的debug下,当时为了方便全拷贝了。注意:运行exe时,程序会从环境变量里的opencv…/bin,sys32,还有exe所在同级目录下找需要的opencv的dll,
GMS 的debug
9、再次运行exe,终于成功了