Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.1k views
in Technique[技术] by (71.8m points)

windows - How to install opencv with tbb enabled using mingw

How to install Opencv with TBB enabled?

I tried the following:

1) Downloaded the TBB package.

2) Build using the below command

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

3) I set the Environmental variable path as "d:bbuildwindows_ia32_gcc_mingw_release

3) Now using cmake, I enabled "WITH_TBB" and compiled the opencv.

its throwing the below error.

[ 22%] Built target pch_Generate_opencv_core
Linking CXX shared library ....inlibopencv_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

Am I missing anything... Please advice..

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

I had the same problem, the following worked out for removing the tbb linking error:

(Assuming you have already built tbb, as you are already explaining in your question)

  • From CMake, configure one time OpenCV

  • Enable WITH_TBB, be careful not enabling BUILD_TBB: the automatic downloading and building of OpenCV failed miserably for me despite many efforts. If you had previously enabled BUILD_TBB, my suggestion is to restart from the beginnning, clearing cmake cache.

  • Configure a second time OpenCV

  • Now some variables should appear: TBB_INCLUDE_DIRS. For me I set the following values (respectively):

    tbb41_20130314oss/include

  • 2 new variables appears: TBB_STDDEF_PATH and TBB_LIB_DIR. They are assigned some apparently reasonable values. For me, TBB_STDDEF_PATH was correct, but TBB_LIB_DIR was not! So I corrected it to be:

    tbb41_20130314oss/build/windows_ia32_gcc_mingw4.8.1_release

    and I left TBB_STDDEF_PATH as it was:

    tbb41_20130314oss/include/tbb/tbb_stddef.h

  • Configure a third time

  • Finally, click Generate, and you are ready to build mingw32-make -j7

  • Once you start using the opencv library, make sue the tbb DLLs are in your path


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...