Qt和OpenCV静态库相互冲突

时间:2013-06-16 18:32:57

标签: c++ visual-studio-2010 qt opencv static-libraries

我正在使用Visual Studio 2010,OpenCV 2.4.5和QT 5.0.2。 我正在尝试通过加载OpenCV和QT的静态库来部署我的应用程序。 问题是它们都在内部包含 zlib (压缩库)。 因此,当我编译项目时,会发生链接错误,因为符号冲突如下。

zlibd.lib(zutil.obj) : error LNK2005: _z_errmsg is already defined in Qt5Cored.lib(zutil.obj).

但是,OpenCV和QT都没有提供没有zlib的静态库。 我该怎么办?

1 个答案:

答案 0 :(得分:1)

看看OpenCV installation guide。它说:“在配置OpenCV时,你可以通过WITH_QT=ON将CM WITH_QT=ON传递给CMake,在任何平台(Windows,Linux,Mac)上使用Qt作为HighGUI后端。”该指南还提供了逐步指南的链接。

因此,请执行这些steps并将{{1}}添加到OpenCV配置中。