Can't use OpenCV with TBB enabled (default_num_threads not found)
Hello, I'm following this guide to compile OpenCV 3.3.0 for Windows 32bit.
In particular, I would like to enable Intel's TBB so I followed the last chapter, step-by-step. Here is the steps I did in details:
- I downloaded the latest release of TBB for Windows here: https://github.com/01org/tbb/releases...
- Extracted it in C:\dev\tbb2017_20170604oss_win folder
- In Cmake, after Configure, my variables are:
- BUILD_TBB = FALSE
- TBB_ENV_INCLUDE = C:/dev/tbb2017_20170604oss/include
- TBB_ENV_LIB = C:/dev/tbb2017_20170604oss/lib/ia32/vc14/tbb.lib
- TBB_ENV_LIB_DEBUG = C:/dev/tbb2017_20170604oss/lib/ia32/vc14/tbb_debug.lib
- TBB_VER_FILE = C:/dev/tbb2017_20170604oss/include/tbb/tbb_stddef.h
- WITH_TBB = TRUE
The Visual Studio project is generated and I can compile everything without problems (using BUILD_ALL). After that, I build the INSTALLER sub-project to populate the "installer" folder with all the compiled files.
I link the new OpenCV distribution to my project. It compiles fine too, but when the project start it throws this error:
The procedure entry point ?default_num_threads@task_scheduler_init@tbb@@SAHXZ could not be located in the dynamic link library [...]\opencv_core330.dll
Did I miss something while configuring/compiling OpenCV? Thanks for the help
Seems like you have problem loading dll or you're loading wrong version .
It could be, but what dll? In the same level of "opencv_core330.dll" there are all the others opencv_*.dll. I tried to put there also the dlls from Intel TBB (located in tbb2017_20170604oss\bin\ia32\vc14), but no luck. About the wrong version... is there a "right" one? As I wrote, I used the latest release of Intel TBB... maybe I must use a different version? I don't see any documentation about that.