检查链接器中的输入库目录,没有问题.
发现问题在于我使用的opencv版本里库文件都集成在了opencv_worldxxx.lib中,而代码里是单独包含了几个库文件。
所以解决方法有两种:
1.修改例程代码,统一包含opecv_worldxxx.lib
2.用某种方式提取opecv_worldxxx.lib中各子库。
直接提取是不行的,只能重新编译opencv的源码,生成相应的库。下载源码,使用CMAKE尝试编译,但提示路径错误,检查了没发现问题,不知为什么。重新下载cmake后没有问题。编译完成之后点击cmake下方的打开工程。
进入输出文件夹并没有搜索到lib文件,进入vs后发现全是子项目,找到需要的几个lib文件对应的项目,在release x64位模式下分别生成。然后在输出文件夹根目录的lib文件夹里就有了编译好的lib文件了。记得先添加lib路径,再在输入的依赖项中添加库名。
仍然出现 无法解析的外部符号 错误。查资料发现是库没有包含进来。所以真正需要包含的库是dll文件,而不是lib,添加的库路径也应该是dll的路径。但是发现输出文件夹里并没有dll文件,导致调用失败。
转: