如何使用mingw安装启用tbb的opencv

时间:2013-05-27 06:27:23

标签: windows opencv cmake mingw tbb

如何在启用TBB的情况下安装Opencv?

我尝试了以下内容:

1)下载TBB包。

2)使用以下命令构建

 mingw32-make compiler=gcc arch=ia32 runtime=mingw default

3)我将环境变量路径设置为“d:\ tbb \ build \ windows_ia32_gcc_mingw_release

3)现在使用cmake,我启用了“WITH_TBB”并编译了opencv。

抛出以下错误。

[ 22%] Built target pch_Generate_opencv_core
Linking CXX shared library ..\..\bin\libopencv_core245.dll
c:/mingw/bin/../lib/gcc/mingw32/4.6.2/../../../../mingw32/bin/ld.exe: cannot fin
d -ltbb
collect2: ld returned 1 exit status
make[2]: *** [bin/libopencv_core245.dll] Error 1
make[1]: *** [modules/core/CMakeFiles/opencv_core.dir/all] Error 2
make: *** [all] Error 2

我错过了什么...... 请指教..

1 个答案:

答案 0 :(得分:11)

我遇到了同样的问题,以下解决了删除tbb链接错误的问题:

(假设你已经建立了tbb,正如你已经在你的问题中解释的那样)

  • 从CMake,配置一次OpenCV

  • 启用WITH_TBB,请注意启用BUILD_TBB:尽管做了很多努力,但我自动下载和构建OpenCV失败了。如果您之前已启用BUILD_TBB,我的建议是从beginnning重新启动,清除cmake缓存。

  • 第二次配置OpenCV

  • 现在应该出现一些变量:TBB_INCLUDE_DIRS。对我来说,我分别设置了以下值:

    tbb41_20130314oss/include

  • 出现2个新变量:TBB_STDDEF_PATHTBB_LIB_DIR。他们被分配了一些明显合理的价值观。对我来说,TBB_STDDEF_PATH是正确的,但TBB_LIB_DIR不是!所以我纠正了它:

    tbb41_20130314oss/build/windows_ia32_gcc_mingw4.8.1_release

    我离开TBB_STDDEF_PATH原样:

    tbb41_20130314oss/include/tbb/tbb_stddef.h

  • 配置第三时间

  • 最后,点击生成,您就可以构建mingw32-make -j7

  • 一旦开始使用opencv库,请使用路径中的tbb DLL