编译OpenCV 4.7.0 无法解析的外部符号 cv::xfeatures2d::VGG::getDefaultName 问题解决

最近做特征匹配,需要用到xfeatures2d中的特征,源码编译OpenCV 4.7.0及opencv_contrib-4.7.0中的xfeatures2d模块,在Visual Studio 2019中编译生成库时,有以下报错

严重性    代码    说明    项目    文件    行    禁止显示状态    禁止显示状态
错误    LNK2001    无法解析的外部符号 “public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl cv::xfeatures2d::VGG::getDefaultName(void)const ” (?getDefaultName@VGG@xfeatures2d@cv@@UEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)    

问题原因:

CMake Configure时,从GitHub上下载vgg_generated_48.i等文件失败。

解决方法:

我的build路径为D:\opencv-4.7.0\build,如下图所示

预先从GitHub上opencv_3rdparty下载文件,解压过后复制到D:\opencv-4.7.0\build\downloads\xfeatures2d目录下。如下图所示

 

 重新Configure和Generate,打开VS编译,问题解决。

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
扎眼的阳光的头像扎眼的阳光普通用户
上一篇 2023年8月8日
下一篇 2023年8月8日

相关推荐