使用Visual Studio项目使Opencv可移植,并删除链接错误
Make Opencv portable with visual studio project and remove linkage errors
我正在尝试将opencv 2.4.13链接到Visual Studio项目。我在项目的子文件夹中有 .lib 和 .dll 文件。我添加了配置的相对路径。但我仍然收到链接错误。我的目标是使项目可移植:fi我将目录带到另一台机器上,我将能够在不单独在机器上安装 opencv 的情况下运行。
我添加的内容:
- lib 子目录到其他库目录 包含目录
- 到其他包含目录
- 链接器中的.dll ->输入 ->其他依赖项
下面是这些错误的示例:
LNK2019 unresolved external symbol __wcsdup_dbg referenced in function __Getctype
LNK2001 unresolved external symbol __wcsdup_dbg
LNK2019 unresolved external symbol __realloc_dbg referenced in function "private: static void __cdecl std::locale::_Locimp::_Locimp_Addfac(class std::locale::_Locimp *,class std::locale::facet *,unsigned int)" (?_Locimp_Addfac@_Locimp@locale@std@@CAXPAV123@PAVfacet@23@I@Z)
有什么想法吗?
确保所有库都使用相同的调试配置生成 - 也就是说,如果要生成项目的 DEBUG 版本,则需要将其链接到 DEBUG 库,如果要生成项目的 RELEASE 版本,则需要将其链接到 RELEASE 库。
同样,您需要确保其他所有内容在构建选项中都是兼容的 - 例如,如果库是在启用/MT 的情况下构建的,则还必须在启用/MT 的情况下构建应用程序。与调用约定(/Gd、/Gr、/Gz(、32 位或 64 位等相同。
您获得的链接器错误引用_dbg
符号,这似乎意味着您在某处存在调试/发布不一致。
我终于用这个问题的答案想通了: 问题:OpenCV - 缺少 dll?
我刚刚将 dll 的路径添加到调试环境:项目 –> 属性 –> 配置属性 –>调试 –>环境 –>在此处添加 dll 的路径,语法如下:
- 例如,要将 C:\Windows\Temp 附加到 PATH:PATH=C:\WINDOWS\Temp;%PATH% 类似地,要将 $(SolutionDir(\DLLS 追加到 PATH
- :PATH=%PATH%;$(SolutionDir(\DLLS
相关文章:
- 从链接列表c++中删除一个项目
- 你能检查一下为什么在这个代码中从链接列表中删除项目不起作用吗
- 删除链接列表中剩余的最后一个节点
- 如何在不泄漏内存的情况下删除链接列表
- 我写了此方法来删除链接列表的重复元素,但它显示了分段故障,原因
- 使用Visual Studio项目使Opencv可移植,并删除链接错误
- 显示然后删除链接列表C
- 删除链接列表中项目的所有出现
- 如何在没有递归的情况下删除链接列表
- 用于删除链接列表的节点的伪代码
- 删除链接列表中的项目
- 删除链接列表中的最后一个节点
- 删除链接列表中的节点
- 无法删除链接列表中的节点
- 删除链接列表上的更多特定节点
- 删除链接列表的最后一个节点
- C++:删除链接列表中的节点后释放它,如何
- 是否可以删除链接列表中的最后一个节点
- 删除链接列表是否安全
- 正在删除链接的对象