【问题标题】:C++ tbb_debug.dll missingC++ tbb_debug.dll 丢失
【发布时间】:2011-09-03 12:38:00
【问题描述】:

我是 openCV 的新手,我尝试按照一些教程进行操作。一切正常,直到我包括在内:opencv2/imgproc/imgproc.hpp 并使用了 filter2D 函数。启动程序时出现以下错误:

“程序无法启动,因为您的计算机中缺少 tbb_debug.dll。”

在网上我发现这个错误与 32 位和 64 位版本的 dll 有关。

我使用的是 64 位版本的 windows,并在 VS2010 中创建了一个 32 位控制台应用程序,该应用程序使用 32 位版本的 openCV dll。 当我启动程序“dependency walker”时,我可以看到我的程序使用了所有系统 dll 的 64 位版本(在 C:\windows\system32....)。只有opencv的dll是32位的。

依赖步行者截图:

谢谢

【问题讨论】:

  • 你必须使用32位版本的dependency walker来分析32位程序(你可以同时安装两个版本的dependency walker)。

标签: visual-studio-2010 dll opencv tbb


【解决方案1】:

我假设您使用的是预编译的 OpenCV 2.3 二进制文件。出于某种原因,该软件包附带 tbb dll,但不附带调试文件(即,带有 tbb.dll,但不是 tbb_debug.dll)。您需要从 Intel here 或作为 Intel 软件的一部分 suite 获得它(如果您想购买/试用)。一旦你得到这个,你需要做的就是把dll放在你的程序的可执行文件可以找到它的路径中。最简单的方法是将所有 tbb*_debug.dll 复制到 OpenCV bin 文件夹 ..../build/common/tbb/intel64/vc10/

更新 [2012 年 5 月]:OpenCV 2.4 现已发布,它附带了所有必需的 dll!

【讨论】:

  • 我只使用 2.4.0... 我遇到了同样的问题
【解决方案2】:

对于所有想尝试最简单的解决方案(这是唯一适合我的解决方案)的人:

  1. 在 Visual Studio 中右键单击您的项目
  2. 选择“属性”
  3. 在英特尔性能库选项下
  4. 为“使用 TBB”选择“是”

this video starting from 2:55中所述

祝大家好运! :)

==== 编辑 - 更新了视频链接(第一次和最后一次)

【讨论】:

  • 你能更新视频的链接吗,它坏了?
  • @DavidBaghdasaryan 视频被作为附加信息。由于过程非常简单,我不会再次更新链接。
【解决方案3】:

如果您需要英特尔 TBB dll,您可以从

获得

www.threadingbuildingblocks.org -> 前往下载区。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-06
    • 1970-01-01
    • 1970-01-01
    • 2023-03-21
    • 2018-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多