OpenCV 预构建的二进制文件没有安装 DLL

Posted

技术标签:

【中文标题】OpenCV 预构建的二进制文件没有安装 DLL【英文标题】:No DLLs are installed with OpenCV Prebuilt binaries 【发布时间】:2015-10-18 03:53:03 【问题描述】:

我使用 Windows OpenCV 安装程序安装了最新版本,但在安装程序将文件解压缩到我的目录后,我找不到任何安装的 dll。我读到所有主要的 dll,包括核心库和校准库都包含在 $OPENCV_DIR/build/x64/bin 中,但是这个目录只有几个文件,教程中没有提到。

这是我的文件目录:

如图所示,此目录中没有 dll。我还查看了相应的 vc11 和 x86 目录,它们具有相同的文件集。我确定我没有做错任何事情,但我看不到 dll 的安装位置。位于 staticlib 文件夹中的库文件,但这些不是我需要的。我在安装 Opencv 时是否缺少步骤?

【问题讨论】:

【参考方案1】:

OpenCV world 是一个结合了所有其他模块的模块。来自here:

引入了名为 opencv_world 的新超级模块。它结合了用户选择的所有其他模块,因此与约 20 个共享库 libopencv_core、libopencv_imgproc 等相比,它更便于重新分发。该模块占用约 10-15Mb 并从相同的目标文件(它们的联合)链接为其他模块,因此整体 OpenCV 编译时间仅增加了几秒钟。

只需链接到lib文件夹中的opencv_world300(d).lib,并将opencv_world300(d).dll复制到.exe附近,或者将bin文件夹添加到PATH,就完成了。

【讨论】:

是的,我想通了。教程真的过时了,应该是最新的。

以上是关于OpenCV 预构建的二进制文件没有安装 DLL的主要内容,如果未能解决你的问题,请参考以下文章

Windows 下 Python 3.x 的 OpenCV [重复]

将 OpenCV 构建为项目的一部分 - 调试 (F11) 到 OpenCV 库中

MongoDB 学习笔记二:安装MongoDB

如何让 DLL 项目更新 Visual Studio 中 C++ 项目中的每个构建

您上传的二进制文件无效。使用 SDK 的预发布测试版构建应用程序

为啥我安装的emgucv的bin文件夹下很多DLL都没有