Intel tbb
Author: c | 2025-04-23
3. Remove the comment marks for the Intel TBB headers to declare the Intel TBB functions that will be used in the sample application. include tbb/tbb.h 4. Remove comment marks to the . parallel_thread() function related to Intel TBB implementation The Intel TBB . parallel_for. function. This function is where the Overview of Intel Threading Building Blocks (Intel TBB) Problems that Intel TBB addresses Origin of Intel TBB Parallel Algorithm Templates How it works Synchronization Concurrent Containers Miscellenea When to use native threads, OpenMP, TBB Quick overview of TBB sources
tbb::parallel_pipeline, nested tbb::parallel_for - Intel Communities
--> Support Community About Developer Software Forums Developer Software Forums Software Development Tools Toolkits & SDKs Software Development Topics Software Development Technologies oneAPI Registration, Download, Licensing and Installation GPU Compute Software Intel® Tiber Developer Cloud Software Archive Edge Software Catalog Product Support Forums Product Support Forums FPGA Memory & Storage Visual Computing Embedded Products Graphics Processors Wireless Ethernet Products Server Products Intel vPro® Platform Intel® Enpirion® Power Solutions Intel® Unison™ App Intel® QuickAssist Technology (Intel® QAT) Intel® Trusted Execution Technology (Intel® TXT) Thunderbolt™ Share Intel® Gaudi® AI Accelerator Gaming Forums Gaming Forums Intel® ARC™ Graphics Gaming on Intel® Processors with Intel® Graphics Developing Games on Intel Graphics Blogs Blogs @Intel Products and Solutions Tech Innovation Thought Leadership Intel Foundry Private Forums Private Forums Intel oneAPI Toolkits Private Forums Intel AI Software - Private Forums Intel® Connectivity Research Program (Private) Intel-Habana Gaudi Technology Forum HARP (Private Forum) Neural Object Cloning Beta Intel® oneAPI Threading Building Blocks Ask questions and share information about adding parallelism to your applications when using this threading library. Intel Community Developer Software Forums Software Development Tools Intel® oneAPI Threading Building Blocks Solved! The /opt/intel/tbb I had successfully compiled my code 6 months back with TBB version 3, but now when I try with version 4 or 3, it gives the errors as shown below. Please help, as I'm stuck with this for 4 days already.Am using Linux localhost.localdomain 2.6.32-431.el6.x86_64Thread model: posixgcc version 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC) TBB version 4:On using /usr/local/tbb43_20150316oss/include/usr/local/tbb43_20150316oss/lib/intel64/gcc4.4/libtbb.sog++ -c -g -Iinclude -I../Estimator/include -I/opt/intel/composer_xe_2015.2.164/mkl/include -I/usr/local/tbb43_20150316oss/include -MMD -MP -MF build/Debug/GNU-Linux-x86/source/Group.o.d -o build/Debug/GNU-Linux-x86/source/Group.o source/Group.cppIn file included from /usr/local/tbb43_20150316oss/include/tbb/concurrent_hash_map.h:47, from /usr/local/tbb43_20150316oss/include/tbb/tbb.h:42, from source/Group.cpp:17:/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:270: error: ‘__TBB_FORWARDING_REF’ has not been declared/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:270: error: expected ‘,’ or ‘...’ before ‘t’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:286: error: expected nested-name-specifier before ‘__TBB_PARAMETER_PACK’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:286: error: expected ‘>’ before ‘Args’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:287: error: ‘Args’ was not declared in this scope/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:287: error: there are no arguments to ‘__TBB_FORWARDING_REF’ that depend on a template parameter, so a declaration of ‘__TBB_FORWARDING_REF’ must be available/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:287: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:287: error: expected ‘)’ before ‘__TBB_PARAMETER_PACK’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:287: error: ISO C++ forbids initialization of member ‘create_node_v’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:287: error: making ‘create_node_v’ static/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:287: error: template declaration of ‘tbb::interface5::internal::split_ordered_list::node* tbb::interface5::internal::create_node_v’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h: In member function ‘tbb::interface5::internal::split_ordered_list::node* tbb::interface5::internal::split_ordered_list::create_node(tbb::interface5::internal::sokey_t, int (*)(Arg))’:/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:275: error: ‘forward’ is not a member of ‘tbb::internal’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:275: error: expected primary-expression before ‘>’ token/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:275: error: ‘t’ was not declared in this scope/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h: At global scope:/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:1288: error: expected primary-expression before ‘)’ token/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:1288: error: there are no arguments to ‘__TBB_FORWARDING_REF’ that depend on a template parameter, so a declaration of ‘__TBB_FORWARDING_REF’ must be available/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:1288: error: expected ‘)’ before ‘value’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:1288: error: expected primary-expression before ‘pnode’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:1288: error: ISO C++ forbids initialization of member ‘internal_insert’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:1288: error: making ‘internal_insert’ static/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:1288: error: template declaration of ‘std::pair::iterator, bool> tbb::interface5::internal::internal_insert’In Tried building with -s and -c options too, and the builds were successful. Problem happens during linking.Now the error on linking is: g++ -o dist/Debug/GNU-Linux-x86/Assoc build/Debug/GNU-Linux-x86/source/AssignmentPair.o build/Debug/GNU-Linux-x86/source/Assoc.o build/Debug/GNU-Linux-x86/source/CoordinateConversion.o build/Debug/GNU-Linux-x86/source/DummyPredictedTrack.o build/Debug/GNU-Linux-x86/source/GateInfo.o build/Debug/GNU-Linux-x86/source/GenerateCostMatrix.o build/Debug/GNU-Linux-x86/source/GroupFormation.o build/Debug/GNU-Linux-x86/source/GroupHypo.o build/Debug/GNU-Linux-x86/source/GroupNode.o build/Debug/GNU-Linux-x86/source/Hungarian.o build/Debug/GNU-Linux-x86/source/Hypo.o build/Debug/GNU-Linux-x86/source/LapJv.o build/Debug/GNU-Linux-x86/source/Main.o build/Debug/GNU-Linux-x86/source/Measurement.o build/Debug/GNU-Linux-x86/source/MergeGroup.o build/Debug/GNU-Linux-x86/source/Mht.o build/Debug/GNU-Linux-x86/source/MhtProcessingThread.o build/Debug/GNU-Linux-x86/source/MhtSendThread.o build/Debug/GNU-Linux-x86/source/Murty.o build/Debug/GNU-Linux-x86/source/PlotAsterixDecoder.o build/Debug/GNU-Linux-x86/source/ReceiveData.o build/Debug/GNU-Linux-x86/source/SplitGroup.o build/Debug/GNU-Linux-x86/source/Track.o build/Debug/GNU-Linux-x86/source/TrackAsterix.o build/Debug/GNU-Linux-x86/source/UdpServer_.o ../Estimator/dist/Debug/GNU-Linux-x86/libestimator.a /opt/intel/mkl/lib/intel64/libmkl_rt.so /opt/intel/tbb/lib/intel64/gcc4.4/libtbb.so /opt/intel/tbb/lib/intel64/gcc4.4/libtbbmalloc.sobuild/Debug/GNU-Linux-x86/source/Assoc.o: In function `~parallel_do_feeder_impl':/opt/intel/tbb/include/tbb/parallel_do.h:182: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/GroupFormation.o: In function `tbb::internal::throw_exception(tbb::internal::exception_id)':/opt/intel/tbb/include/tbb/tbb_exception.h:117: undefined reference to `tbb::internal::throw_exception_v4(tbb::internal::exception_id)'build/Debug/GNU-Linux-x86/source/GroupFormation.o: In function `~task_group_base':/opt/intel/tbb/include/tbb/task_group.h:121: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'/opt/intel/tbb/include/tbb/task_group.h:124: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'/opt/intel/tbb/include/tbb/task_group.h:129: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/GroupFormation.o: In function `~parallel_do_feeder_impl':/opt/intel/tbb/include/tbb/parallel_do.h:182: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/Mht.o: In function `~parallel_do_feeder_impl':/opt/intel/tbb/include/tbb/parallel_do.h:182: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/Mht.o:/opt/intel/tbb/include/tbb/parallel_do.h:182: more undefined references to `tbb::interface5::internal::task_base::destroy(tbb::task&)' followcollect2: ld returned 1 exit statusgmake[2]: *** [dist/Debug/GNU-Linux-x86/Assoc] Error 1gmake[2]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake[1]: *** [.build-conf] Error 2gmake[1]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake: *** [.build-impl] Error 2BUILD FAILED (exit value 2, total time: 41s)Alexy had suggested in this thread to try one of the example programs of TBB and use ldd, so when I tried, this is the output I got: ldd game_of_life linux-vdso.so.1 => (0x00007fff03c8a000) libtbb.so.2 => /usr/lib64/libtbb.so.2 (0x00007fbd2ffe8000) librt.so.1 => /lib64/librt.so.1 (0x000000302ce00000) libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x000000346e400000) libm.so.6 => /lib64/libm.so.6 (0x000000302be00000) libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x000000346e000000) libc.so.6 => /lib64/libc.so.6 (0x000000302c200000) libpthread.so.0 => /lib64/libpthread.so.0 (0x000000302c600000) libdl.so.2 => /lib64/libdl.so.2 (0x000000302ca00000) /lib64/ld-linux-x86-64.so.2 (0x000000302ba00000)Although from the build output, it appears the correct libraries are being linked: /opt/intel/tbb/lib/intel64/gcc4.4/libtbb.so /opt/intel/tbb/lib/intel64/gcc4.4/libtbbmalloc.so Update:After taking a backup of the files, I deleted the tbb include and lib files from /usr/lib64 and added -L/opt/intel/tbb/lib/intel64/gcc4.4 -I/opt/intel/tbb/include to the "Additional options" in the linker options.Build was successful this time.On running the executable, it gave the error/home/nkipe/NetBeansProjects/Assoc/dist/Debug/GNU-Linux-x86/assoc: error while loading shared libraries: libtbb.so.2: cannot open shared object file: No such file or directoryEven adding export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/opt/intel/tbb/lib/intel64/gcc4.4" to .bashrc and sourcing it with source ~/.bashrc did not help. The "cannot open shared object file: No such file or directory" error still occurs.ldd shows:ldd assoc linux-vdso.so.1Installation of TBB - Intel Community
Build/Debug/GNU-Linux-x86/source/GateInfo.o build/Debug/GNU-Linux-x86/source/GenerateCostMatrix.o build/Debug/GNU-Linux-x86/source/GroupFormation.o build/Debug/GNU-Linux-x86/source/GroupHypo.o build/Debug/GNU-Linux-x86/source/GroupNode.o build/Debug/GNU-Linux-x86/source/Hungarian.o build/Debug/GNU-Linux-x86/source/Hypo.o build/Debug/GNU-Linux-x86/source/LapJv.o build/Debug/GNU-Linux-x86/source/Main.o build/Debug/GNU-Linux-x86/source/Measurement.o build/Debug/GNU-Linux-x86/source/MergeGroup.o build/Debug/GNU-Linux-x86/source/Mht.o build/Debug/GNU-Linux-x86/source/MhtProcessingThread.o build/Debug/GNU-Linux-x86/source/MhtSendThread.o build/Debug/GNU-Linux-x86/source/Murty.o build/Debug/GNU-Linux-x86/source/PlotAsterixDecoder.o build/Debug/GNU-Linux-x86/source/ReceiveData.o build/Debug/GNU-Linux-x86/source/SplitGroup.o build/Debug/GNU-Linux-x86/source/Track.o build/Debug/GNU-Linux-x86/source/TrackAsterix.o build/Debug/GNU-Linux-x86/source/UdpServer_.o ../Estimator/dist/Debug/GNU-Linux-x86/libestimator.a /opt/intel/mkl/lib/intel64/libmkl_rt.so /opt/intel/tbb/lib/intel64/gcc4.4/libtbb.so /opt/intel/tbb/lib/intel64/gcc4.4/libtbbmalloc.sobuild/Debug/GNU-Linux-x86/source/Assoc.o: In function `~parallel_do_feeder_impl':/opt/intel/tbb/include/tbb/parallel_do.h:182: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/GroupFormation.o: In function `tbb::internal::throw_exception(tbb::internal::exception_id)':/opt/intel/tbb/include/tbb/tbb_exception.h:117: undefined reference to `tbb::internal::throw_exception_v4(tbb::internal::exception_id)'build/Debug/GNU-Linux-x86/source/GroupFormation.o: In function `~task_group_base':/opt/intel/tbb/include/tbb/task_group.h:121: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'/opt/intel/tbb/include/tbb/task_group.h:124: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'/opt/intel/tbb/include/tbb/task_group.h:129: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/GroupFormation.o: In function `~parallel_do_feeder_impl':/opt/intel/tbb/include/tbb/parallel_do.h:182: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/Mht.o: In function `~parallel_do_feeder_impl':/opt/intel/tbb/include/tbb/parallel_do.h:182: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/Mht.o:/opt/intel/tbb/include/tbb/parallel_do.h:182: more undefined references to `tbb::interface5::internal::task_base::destroy(tbb::task&)' followcollect2: ld returned 1 exit statusgmake[2]: *** [dist/Debug/GNU-Linux-x86/Assoc] Error 1gmake[2]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake[1]: *** [.build-conf] Error 2gmake[1]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake: *** [.build-impl] Error 2BUILD FAILED (exit value 2, total time: 41s)Alexy had suggested in this thread to try one of the example programs of TBB and use ldd, so when I tried, this is the output I got: ldd game_of_life linux-vdso.so.1 => (0x00007fff03c8a000) libtbb.so.2 => /usr/lib64/libtbb.so.2 (0x00007fbd2ffe8000) librt.so.1 => /lib64/librt.so.1 (0x000000302ce00000) libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x000000346e400000) libm.so.6 => /lib64/libm.so.6 (0x000000302be00000) libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x000000346e000000) libc.so.6 => /lib64/libc.so.6 (0x000000302c200000) libpthread.so.0 => /lib64/libpthread.so.0 (0x000000302c600000) libdl.so.2 => /lib64/libdl.so.2 (0x000000302ca00000) /lib64/ld-linux-x86-64.so.2 (0x000000302ba00000)Although from the build output, it appears the correct libraries are being linked: /opt/intel/tbb/lib/intel64/gcc4.4/libtbb.so /opt/intel/tbb/lib/intel64/gcc4.4/libtbbmalloc.so Update:After taking a backup of the files, I deleted the tbb include and lib files from /usr/lib64 and added -L/opt/intel/tbb/lib/intel64/gcc4.4 -I/opt/intel/tbb/include to the "Additional options" in the linker options.Build was successful this time.On running the executable, it gave the error/home/nkipe/NetBeansProjects/Assoc/dist/Debug/GNU-Linux-x86/assoc: error while loading shared libraries: libtbb.so.2: cannot open shared object file: No such file or directoryEven adding export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/opt/intel/tbb/lib/intel64/gcc4.4" to .bashrc and sourcing it with source ~/.bashrc did not help. The "cannot open shared object file: No such file or directory" error still occurs.ldd shows:ldd assoc linux-vdso.so.1 => (0x00007fffd359a000) /opt/intel/mkl/lib/intel64/libmkl_rt.so (0x00007fbf705f9000) libtbb.so.2 => not found libtbbmalloc.so.2 => not found libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x000000346e400000) libm.so.6 => /lib64/libm.so.6 (0x000000302be00000) libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x000000346e000000) libc.so.6 => /lib64/libc.so.6 (0x000000302c200000) libpthread.so.0 => /lib64/libpthread.so.0 (0x000000302c600000) libdl.so.2 => /lib64/libdl.so.2 (0x000000302ca00000) /lib64/ld-linux-x86-64.so.2 (0x000000302ba00000)How can it not be found when I have linked it and the program got built successfully? Solved! The /opt/intel/tbb folder was actually a link to a folder in the composer folder's tbb. Maybe that's why the .so.2's could not be found. I downloaded tbb30_20100406oss and pointed all paths to it. After building, although I wasn't able to run it via Netbeans because of a /home/nkipe/NetBeansProjects/Association/dist/Debug/GNU-Linux-x86/assoc: error while loading shared libraries: libtbb.so.2: cannot open shared object file: No such file or directory error, I was able to run it via the commandline.Thanks a lot Raf and Christopher!!! :-) To make sure we're on the same page, please create a new shell, and use it to consecutively echo the path, list the *.so.2 contents of the relevant directory (full output to see permissions), do ldd assoc, and then ./assoc.(Added) Oops, didn't see the. 3. Remove the comment marks for the Intel TBB headers to declare the Intel TBB functions that will be used in the sample application. include tbb/tbb.h 4. Remove comment marks to the . parallel_thread() function related to Intel TBB implementation The Intel TBB . parallel_for. function. This function is where theMixing OpenMP and Intel TBB
Error 1gmake[2]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake[1]: *** [.build-conf] Error 2gmake[1]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake: *** [.build-impl] Error 2BUILD FAILED (exit value 2, total time: 38s) CC++Development ToolsIntel® Threading Building BlocksOptimizationParallel Computing 1 Solution Hello, Nav,Thank you for asking. The __TBB_FORWARDING_REF macro is to help support C++11 rvalue references, and is a new feature for TBB. (I don't know about the task::destroy error.)Is it possible you have more than one version of tbb include files in your path? Could you try your compile with -H, or -E to preprocess the file, and see if this is the case?I hope we can help you, Chris All forum topics Previous topic Next topic 7 Replies Hello, Nav,Thank you for asking. The __TBB_FORWARDING_REF macro is to help support C++11 rvalue references, and is a new feature for TBB. (I don't know about the task::destroy error.)Is it possible you have more than one version of tbb include files in your path? Could you try your compile with -H, or -E to preprocess the file, and see if this is the case?I hope we can help you, Chris Ah thanks! Tried -H and -E and found that scalable_allocator was being included from two places:/opt/intel/tbb/include/tbb/scalable_allocator.h and/usr/include/tbb/scalable_allocator.hFixed that, and now the error shown is: In file included from /opt/intel/tbb/include/tbb/flow_graph.h:2892, from /opt/intel/tbb/include/tbb/tbb.h:53, from source/Group.cpp:17:/opt/intel/tbb/include/tbb/internal/_flow_graph_indexer_impl.h:37: error: expected ‘>’ before numeric constantgmake[2]: *** [build/Debug/GNU-Linux-x86/source/GroupFormation.o] Error 1gmake[2]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake[1]: *** [.build-conf] Error 2gmake[1]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake: *** [.build-impl] Error 2 Macro K defined somewhere? My goodness! Raf, how in the world did you find that out? Yes there was a K defined which had caused a conflict with Boost a few years back.#define K 6.0 //BUG/WARNING/CAUTION: using this macro may conflict with a 'class K' of ptr_map of boostNoted. Should use a more meaningful name for variable/constant names.After renaming K to SCAN_K, I --> Support Community About Developer Software Forums Developer Software Forums Software Development Tools Toolkits & SDKs Software Development Topics Software Development Technologies oneAPI Registration, Download, Licensing and Installation GPU Compute Software Intel® Tiber Developer Cloud Software Archive Edge Software Catalog Product Support Forums Product Support Forums FPGA Memory & Storage Visual Computing Embedded Products Graphics Processors Wireless Ethernet Products Server Products Intel vPro® Platform Intel® Enpirion® Power Solutions Intel® Unison™ App Intel® QuickAssist Technology (Intel® QAT) Intel® Trusted Execution Technology (Intel® TXT) Thunderbolt™ Share Intel® Gaudi® AI Accelerator Gaming Forums Gaming Forums Intel® ARC™ Graphics Gaming on Intel® Processors with Intel® Graphics Developing Games on Intel Graphics Blogs Blogs @Intel Products and Solutions Tech Innovation Thought Leadership Intel Foundry Private Forums Private Forums Intel oneAPI Toolkits Private Forums Intel AI Software - Private Forums Intel® Connectivity Research Program (Private) Intel-Habana Gaudi Technology Forum HARP (Private Forum) Neural Object Cloning Beta Intel® oneAPI Threading Building Blocks Ask questions and share information about adding parallelism to your applications when using this threading library. Intel Community Developer Software Forums Software Development Tools Intel® oneAPI Threading Building Blocks Errors in tbb interface and concurrent_unordered_impl More actions Subscribe to RSS Feed Mark Topic as New Mark Topic as Read Float this Topic for Current User Bookmark Subscribe Mute Printer Friendly Page I had successfully compiled my code 6 months back with TBB version 3, but now when I try with version 4 or 3, it gives the errors as shown below. Please help, as I'm stuck with this for 4 days already.Am using Linux localhost.localdomain 2.6.32-431.el6.x86_64Thread model: posixgcc version 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC) TBB version 4:On using /usr/local/tbb43_20150316oss/include/usr/local/tbb43_20150316oss/lib/intel64/gcc4.4/libtbb.sog++ -c -g -Iinclude -I../Estimator/include -I/opt/intel/composer_xe_2015.2.164/mkl/include -I/usr/local/tbb43_20150316oss/include -MMD -MP -MF build/Debug/GNU-Linux-x86/source/Group.o.d -o build/Debug/GNU-Linux-x86/source/Group.o source/Group.cppIn file included from /usr/local/tbb43_20150316oss/include/tbb/concurrent_hash_map.h:47, from /usr/local/tbb43_20150316oss/include/tbb/tbb.h:42, from source/Group.cpp:17:/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:270: error: ‘__TBB_FORWARDING_REF’ has notoneTBB with TBB - Intel Community
File included from /usr/local/tbb43_20150316oss/include/tbb/flow_graph.h:2910, from /usr/local/tbb43_20150316oss/include/tbb/tbb.h:53, from source/Group.cpp:17:/usr/local/tbb43_20150316oss/include/tbb/internal/_flow_graph_indexer_impl.h:37: error: expected ‘>’ before numeric constantgmake[2]: *** [build/Debug/GNU-Linux-x86/source/Group.o] Error 1gmake[2]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake[1]: *** [.build-conf] Error 2gmake[1]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake: *** [.build-impl] Error 2BUILD FAILED (exit value 2, total time: 9s)----------------------------------------------------------------------------------------------------------------------------------------TBB version 3On trying /usr/local/tbb30_20100406oss/lib/intel64/cc4.1.0_libc2.4_kernel2.6.16.21/libtbb.so and /usr/local/tbb30_20100406oss/includeg++ -o dist/Debug/GNU-Linux-x86/Assoc build/Debug/GNU-Linux-x86/source/AssignmentPair.o build/Debug/GNU-Linux-x86/source/Assoc.o build/Debug/GNU-Linux-x86/source/CoordinateConversion.o build/Debug/GNU-Linux-x86/source/DummyPredictedTrack.o build/Debug/GNU-Linux-x86/source/GateInfo.o build/Debug/GNU-Linux-x86/source/GenerateCostMatrix.o build/Debug/GNU-Linux-x86/source/Group.o build/Debug/GNU-Linux-x86/source/GroupHypo.o build/Debug/GNU-Linux-x86/source/GroupNode.o build/Debug/GNU-Linux-x86/source/Hungarian.o build/Debug/GNU-Linux-x86/source/Hypo.o build/Debug/GNU-Linux-x86/source/LapJv.o build/Debug/GNU-Linux-x86/source/Main.o build/Debug/GNU-Linux-x86/source/Measurement.o build/Debug/GNU-Linux-x86/source/MergeGroup.o build/Debug/GNU-Linux-x86/source/Mht.o build/Debug/GNU-Linux-x86/source/MhtProcessingThread.o build/Debug/GNU-Linux-x86/source/MhtSendThread.o build/Debug/GNU-Linux-x86/source/Murty.o build/Debug/GNU-Linux-x86/source/PlotAsterixDecoder.o build/Debug/GNU-Linux-x86/source/ReceiveData.o build/Debug/GNU-Linux-x86/source/SplitGroup.o build/Debug/GNU-Linux-x86/source/Track.o build/Debug/GNU-Linux-x86/source/TrackAsterix.o build/Debug/GNU-Linux-x86/source/UdpServer_.o ../Estimator/dist/Debug/GNU-Linux-x86/libestimator.a /opt/intel/mkl/lib/intel64/libmkl_rt.so /usr/local/tbb30_20100406oss/lib/intel64/cc4.1.0_libc2.4_kernel2.6.16.21/libtbb.so /usr/local/tbb30_20100406oss/lib/intel64/cc4.1.0_libc2.4_kernel2.6.16.21/libtbbmalloc.sobuild/Debug/GNU-Linux-x86/source/Assoc.o: In function `~parallel_do_feeder_impl':/usr/local/tbb30_20100406oss/include/tbb/parallel_do.h:189: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/Group.o: In function `~task_group':/usr/local/tbb30_20100406oss/include/tbb/task_group.h:164: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'/usr/local/tbb30_20100406oss/include/tbb/task_group.h:168: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/Group.o: In function `~parallel_do_feeder_impl':/usr/local/tbb30_20100406oss/include/tbb/parallel_do.h:189: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/Mht.o: In function `~parallel_do_feeder_impl':/usr/local/tbb30_20100406oss/include/tbb/parallel_do.h:189: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/Mht.o:/usr/local/tbb30_20100406oss/include/tbb/parallel_do.h:189: more undefined references to `tbb::interface5::internal::task_base::destroy(tbb::task&)' followcollect2: ld returned 1 exit statusgmake[2]: *** [dist/Debug/GNU-Linux-x86/Assoc] Error 1gmake[2]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake[1]: *** [.build-conf] Error 2gmake[1]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake: *** [.build-impl] Error 2BUILD FAILED (exit value 2, total time: 38s) CC++Development ToolsIntel® Threading Building BlocksOptimizationParallel Computing 1 Solution Hello, Nav,Thank you for asking. The __TBB_FORWARDING_REF macro is to help support C++11 rvalue references, and is a new feature for TBB. (I don't know about the task::destroy error.)Is it possible you have more than one version of tbb include files in your path? Could you try your compile with -H, or -E to preprocess the file, and see if this is the case?I hope we can help you, Chris All forum topics Previous topic Next topic 7 Replies Hello, Nav,Thank you for asking. The __TBB_FORWARDING_REF macro is to help support C++11 rvalue references, and is a new feature for TBB. (I don't know about the task::destroy error.)Is it possible you have more than one version of tbb include files in your path? Could you try your compile with -H, or -E to preprocess the file, and see if this is the case?I hope we can help you, Chris Ah thanks! Tried -H and -E and found that scalable_allocator was being included from two places:/opt/intel/tbb/include/tbb/scalable_allocator.h and/usr/include/tbb/scalable_allocator.hFixed that, and now the error shown is: In file included from /opt/intel/tbb/include/tbb/flow_graph.h:2892, from /opt/intel/tbb/include/tbb/tbb.h:53, from source/Group.cpp:17:/opt/intel/tbb/include/tbb/internal/_flow_graph_indexer_impl.h:37: error: expected ‘>’ before numeric constantgmake[2]: *** [build/Debug/GNU-Linux-x86/source/GroupFormation.o] Error 1gmake[2]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake[1]: *** [.build-conf] Error 2gmake[1]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake: *** [.build-impl] Error 2 Macro K defined somewhere? My goodness! Raf, how in the world did you find that out? Yes there was a K defined which had caused a conflict with Boost a few years back.#define K 6.0 //BUG/WARNING/CAUTION: using this macro may conflict with a 'class K' of ptr_map of boostNoted. Should use a more meaningful name for variable/constant names.After renaming K to SCAN_K, I tried building with -s and -c options too, and the builds were successful. Problem happens during linking.Now the error on linking is: g++ -o dist/Debug/GNU-Linux-x86/Assoc build/Debug/GNU-Linux-x86/source/AssignmentPair.o build/Debug/GNU-Linux-x86/source/Assoc.o build/Debug/GNU-Linux-x86/source/CoordinateConversion.o build/Debug/GNU-Linux-x86/source/DummyPredictedTrack.oParallel Programming with Intel TBB
Kernel Library 2018 for Linux*intel-mkl-cluster-2018.0-128 Intel(R) Math Kernel Library 2018 for Linux*intel-mkl-ps-gnu-f-rt-196 Intel(R) Math Kernel Library 2017 Update 3 for Linux*intel-mkl-cluster-f-2018.0-128 Intel(R) Math Kernel Library 2018 for Linux*intel-mkl-common-c-174 Intel(R) Math Kernel Library 2017 Update 2 for Linux*intel-mkl-ps-ss-tbb-196 Intel(R) Math Kernel Library 2017 Update 3 for Linux*intel-tbb-libs-32bit-2018.0-128 Intel(R) Threading Building Blocks 2018 for Linux*intel-mkl-gnu-c-32bit-2018.1-163 Intel(R) Math Kernel Library 2018 Update 1 for Linux*intel-mkl-tbb-32bit-2018.1-163 Intel(R) Math Kernel Library 2018 Update 1 for Linux*intel-tbb-libs-2018.1-163 Intel(R) Threading Building Blocks 2018 Update 1 for Linux*intel-mkl-ps-common-f-32bit-174 Intel(R) Math Kernel Library 2017 Update 2 for Linux*intel-mkl-ps-ss-tbb-rt-32bit-174 Intel(R) Math Kernel Library 2017 Update 2 for Linux*intel-mkl-196 Intel(R) Math Kernel Library 2017 Update 3 for Linux*intel-mkl-ps-pgi-196 Intel(R) Math Kernel Library 2017 Update 3 for Linux*intel-mkl-psxe-2018.2-046 Intel(R) Math Kernel Library 2018 Update 2 for Linux*intel-mkl-doc-c Intel(R) Math Kernel Library 2017 Update 4 for Linux*intel-mkl-ps-f95-196 Intel(R) Math Kernel Library 2017 Update 3 for Linux*intel-mkl-ps-cluster-196 Intel(R) Math Kernel Library 2017 Update 3 for Linux*intel-tbb-libs-174 Intel(R) Threading Building Blocks 2017 Update 4 for Linux*intel-comp-l-all-vars-174 Intel(R) Compilers 17.0 Update 2 for Linux*intel-mkl-gnu-f-rt-2018.2-199 Intel(R) Math Kernel Library 2018 Update 2 for Linux*intel-mkl-gnu-rt-174 Intel(R) Math Kernel Library 2017 Update 2 for Linux*intel-openmp-l-ps-libs-32bit-jp-196 OpenMP for Intel(R) Compilers 17.0 Update 4 for Linux*intel-mkl-gnu-f-rt-32bit-2018.1-163 Intel(R) Math Kernel Library 2018 Update 1 for Linux*intel-openmp-18.0.1-163 OpenMP for Intel(R) Compilers 18.0 Update 1 for Linux*intel-mkl-ps-cluster-64bit-174 Intel(R) Math Kernel Library 2017 Update 2 for Linux*intel-mkl-core-c-2018.1-163 Intel(R) Math Kernel Library 2018 Update 1 for Linux*intel-mkl-pgi-rt-2018.0-128 Intel(R) Math Kernel Library 2018 for Linux*intel-mkl-2018.2-046 Intel(R) Math Kernel Library 2018 Update 2 for Linux*intel-mkl-gnu-rt-239 Intel(R) Math Kernel Library 2017 Update 4 for Linux*intel-mkl-gnu-rt-32bit-196 Intel(R) Math Kernel Library 2017 Update 3 for Linux*intel-comp-l-all-vars-18.0.0-128 Intel(R) Compilers 18.0 for Linux*intel-mkl-ps-common-jp-174 Intel(R) Math Kernel Library 2017 Update 2 for Linux*intel-openmp-32bit-18.0.0-128 OpenMP for Intel(R) Compilers 18.0 for Linux*intel-mkl-f95-2018.0-128 Intel(R) Math Kernel Library 2018 for Linux*intel-mkl-core-ps-32bit-2018.1-163 Intel(R) Math Kernel Library 2018 Update 1 for Linux*intel-mkl-ps-gnu-f-32bit-239 Intel(R) Math Kernel Library 2017 Update 4 for Linux*intel-mkl-ps-tbb-mic-rt-196 Intel(R) Math Kernel Library 2017 Update 3 for Linux*intel-mkl-core-2018.2-199 Intel(R) Math Kernel Library 2018 Update 2 for Linux*intel-mkl-psxe-2018.1-038 Intel(R) Math Kernel Library 2018 Update 1 for Linux*intel-mkl-gnu-2018.2-199 Intel(R) Math Kernel Library 2018 Update 2 for Linux*intel-mkl-ps-mic-174 Intel(R) Math Kernel. 3. Remove the comment marks for the Intel TBB headers to declare the Intel TBB functions that will be used in the sample application. include tbb/tbb.h 4. Remove comment marks to the . parallel_thread() function related to Intel TBB implementation The Intel TBB . parallel_for. function. This function is where the Overview of Intel Threading Building Blocks (Intel TBB) Problems that Intel TBB addresses Origin of Intel TBB Parallel Algorithm Templates How it works Synchronization Concurrent Containers Miscellenea When to use native threads, OpenMP, TBB Quick overview of TBB sourcesTBB For MinGW - Intel Community
Library 2017 Update 2 for Linux*intel-mkl-64bit-2017.4-061 Intel(R) Math Kernel Library 2017 Update 4 for Linux*intel-mkl-ps-f95-32bit-239 Intel(R) Math Kernel Library 2017 Update 4 for Linux*intel-mkl-ps-mic-rt-jp-174 Intel(R) Math Kernel Library 2017 Update 2 for Linux*intel-mkl-gnu-196 Intel(R) Math Kernel Library 2017 Update 3 for Linux*intel-psxe-common-doc-2018 Intel(R) Parallel Studio XE 2018 Update 2 for Linux*intel-mkl-ps-tbb-mic-174 Intel(R) Math Kernel Library 2017 Update 2 for Linux*intel-mkl-core-c-2018.0-128 Intel(R) Math Kernel Library 2018 for Linux*intel-mkl-core-c-32bit-2018.0-128 Intel(R) Math Kernel Library 2018 for Linux*intel-mkl-ps-cluster-rt-196 Intel(R) Math Kernel Library 2017 Update 3 for Linux*intel-mkl-ps-rt-jp-32bit-239 Intel(R) Math Kernel Library 2017 Update 4 for Linux*intel-mkl-core-c-2018.2-199 Intel(R) Math Kernel Library 2018 Update 2 for Linux*intel-mkl-ps-ss-tbb-rt-239 Intel(R) Math Kernel Library 2017 Update 4 for Linux*intel-mkl-core-f-2018.2-199 Intel(R) Math Kernel Library 2018 Update 2 for Linux*intel-mkl-psxe-050 Intel(R) Math Kernel Library 2017 Update 2 for Linux*intel-mkl-64bit-2018.2-046 Intel(R) Math Kernel Library 2018 Update 2 for Linux*intel-mkl-tbb-rt-32bit-2018.2-199 Intel(R) Math Kernel Library 2018 Update 2 for Linux*intel-mkl-ps-ss-tbb-rt-32bit-196 Intel(R) Math Kernel Library 2017 Update 3 for Linux*intel-mkl-ps-doc-f Intel(R) Math Kernel Library 2017 Update 4 for Linux*intel-mkl-gnu-c-174 Intel(R) Math Kernel Library 2017 Update 2 for Linux*intel-mkl-ps-f95-common-174 Intel(R) Math Kernel Library 2017 Update 2 for Linux*intel-mkl-ps-rt-jp-196 Intel(R) Math Kernel Library 2017 Update 3 for Linux*intel-mkl-ps-gnu-f-rt-174 Intel(R) Math Kernel Library 2017 Update 2 for Linux*intel-mkl-ps-pgi-f-196 Intel(R) Math Kernel Library 2017 Update 3 for Linux*intel-tbb-libs-32bit-2018.1-163 Intel(R) Threading Building Blocks 2018 Update 1 for Linux*intel-mkl-common-c-2018.0-128 Intel(R) Math Kernel Library 2018 for Linux*intel-mkl-gnu-rt-32bit-2018.0-128 Intel(R) Math Kernel Library 2018 for Linux*intel-mkl-64bit-2018.0-033 Intel(R) Math Kernel Library 2018 for Linux*intel-mkl-ps-mic-c-239 Intel(R) Math Kernel Library 2017 Update 4 for Linux*intel-mkl-ps-ss-tbb-239 Intel(R) Math Kernel Library 2017 Update 4 for Linux*intel-mkl-ps-common-64bit-239 Intel(R) Math Kernel Library 2017 Update 4 for Linux*intel-openmp-32bit-18.0.2-199 OpenMP for Intel(R) Compilers 18.0 Update 2 for Linux*intel-mkl-ps-rt-jp-32bit-196 Intel(R) Math Kernel Library 2017 Update 3 for Linux*intel-mkl-gnu-f-rt-2018.0-128 Intel(R) Math Kernel Library 2018 for Linux*intel-mkl-ps-common-jp-239 Intel(R) Math Kernel Library 2017 Update 4 for Linux*intel-mkl-ps-tbb-mic-rt-239 Intel(R) Math Kernel Library 2017 Update 4 for Linux*intel-psxe-common-061 Intel(R) Parallel Studio XE 2017 Update 5 for Linux*intel-mkl-gnu-rt-32bit-174 Intel(R) Math Kernel Library 2017 Update 2 for Linux*intel-mkl-ps-common-f-32bit-239 Intel(R) Math Kernel Library 2017 Update 4 for Linux*intel-mkl-ps-mic-cluster-196 Intel(R) Math Kernel Library 2017 Update 3 for Linux*intel-mkl-ps-common-f-32bit-196 Intel(R) Math Kernel Library 2017Comments
--> Support Community About Developer Software Forums Developer Software Forums Software Development Tools Toolkits & SDKs Software Development Topics Software Development Technologies oneAPI Registration, Download, Licensing and Installation GPU Compute Software Intel® Tiber Developer Cloud Software Archive Edge Software Catalog Product Support Forums Product Support Forums FPGA Memory & Storage Visual Computing Embedded Products Graphics Processors Wireless Ethernet Products Server Products Intel vPro® Platform Intel® Enpirion® Power Solutions Intel® Unison™ App Intel® QuickAssist Technology (Intel® QAT) Intel® Trusted Execution Technology (Intel® TXT) Thunderbolt™ Share Intel® Gaudi® AI Accelerator Gaming Forums Gaming Forums Intel® ARC™ Graphics Gaming on Intel® Processors with Intel® Graphics Developing Games on Intel Graphics Blogs Blogs @Intel Products and Solutions Tech Innovation Thought Leadership Intel Foundry Private Forums Private Forums Intel oneAPI Toolkits Private Forums Intel AI Software - Private Forums Intel® Connectivity Research Program (Private) Intel-Habana Gaudi Technology Forum HARP (Private Forum) Neural Object Cloning Beta Intel® oneAPI Threading Building Blocks Ask questions and share information about adding parallelism to your applications when using this threading library. Intel Community Developer Software Forums Software Development Tools Intel® oneAPI Threading Building Blocks Solved! The /opt/intel/tbb I had successfully compiled my code 6 months back with TBB version 3, but now when I try with version 4 or 3, it gives the errors as shown below. Please help, as I'm stuck with this for 4 days already.Am using Linux localhost.localdomain 2.6.32-431.el6.x86_64Thread model: posixgcc version 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC) TBB version 4:On using /usr/local/tbb43_20150316oss/include/usr/local/tbb43_20150316oss/lib/intel64/gcc4.4/libtbb.sog++ -c -g -Iinclude -I../Estimator/include -I/opt/intel/composer_xe_2015.2.164/mkl/include -I/usr/local/tbb43_20150316oss/include -MMD -MP -MF build/Debug/GNU-Linux-x86/source/Group.o.d -o build/Debug/GNU-Linux-x86/source/Group.o source/Group.cppIn file included from /usr/local/tbb43_20150316oss/include/tbb/concurrent_hash_map.h:47, from /usr/local/tbb43_20150316oss/include/tbb/tbb.h:42, from source/Group.cpp:17:/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:270: error: ‘__TBB_FORWARDING_REF’ has not been declared/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:270: error: expected ‘,’ or ‘...’ before ‘t’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:286: error: expected nested-name-specifier before ‘__TBB_PARAMETER_PACK’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:286: error: expected ‘>’ before ‘Args’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:287: error: ‘Args’ was not declared in this scope/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:287: error: there are no arguments to ‘__TBB_FORWARDING_REF’ that depend on a template parameter, so a declaration of ‘__TBB_FORWARDING_REF’ must be available/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:287: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:287: error: expected ‘)’ before ‘__TBB_PARAMETER_PACK’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:287: error: ISO C++ forbids initialization of member ‘create_node_v’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:287: error: making ‘create_node_v’ static/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:287: error: template declaration of ‘tbb::interface5::internal::split_ordered_list::node* tbb::interface5::internal::create_node_v’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h: In member function ‘tbb::interface5::internal::split_ordered_list::node* tbb::interface5::internal::split_ordered_list::create_node(tbb::interface5::internal::sokey_t, int (*)(Arg))’:/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:275: error: ‘forward’ is not a member of ‘tbb::internal’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:275: error: expected primary-expression before ‘>’ token/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:275: error: ‘t’ was not declared in this scope/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h: At global scope:/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:1288: error: expected primary-expression before ‘)’ token/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:1288: error: there are no arguments to ‘__TBB_FORWARDING_REF’ that depend on a template parameter, so a declaration of ‘__TBB_FORWARDING_REF’ must be available/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:1288: error: expected ‘)’ before ‘value’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:1288: error: expected primary-expression before ‘pnode’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:1288: error: ISO C++ forbids initialization of member ‘internal_insert’/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:1288: error: making ‘internal_insert’ static/usr/local/tbb43_20150316oss/include/tbb/internal/_concurrent_unordered_impl.h:1288: error: template declaration of ‘std::pair::iterator, bool> tbb::interface5::internal::internal_insert’In
2025-03-26Tried building with -s and -c options too, and the builds were successful. Problem happens during linking.Now the error on linking is: g++ -o dist/Debug/GNU-Linux-x86/Assoc build/Debug/GNU-Linux-x86/source/AssignmentPair.o build/Debug/GNU-Linux-x86/source/Assoc.o build/Debug/GNU-Linux-x86/source/CoordinateConversion.o build/Debug/GNU-Linux-x86/source/DummyPredictedTrack.o build/Debug/GNU-Linux-x86/source/GateInfo.o build/Debug/GNU-Linux-x86/source/GenerateCostMatrix.o build/Debug/GNU-Linux-x86/source/GroupFormation.o build/Debug/GNU-Linux-x86/source/GroupHypo.o build/Debug/GNU-Linux-x86/source/GroupNode.o build/Debug/GNU-Linux-x86/source/Hungarian.o build/Debug/GNU-Linux-x86/source/Hypo.o build/Debug/GNU-Linux-x86/source/LapJv.o build/Debug/GNU-Linux-x86/source/Main.o build/Debug/GNU-Linux-x86/source/Measurement.o build/Debug/GNU-Linux-x86/source/MergeGroup.o build/Debug/GNU-Linux-x86/source/Mht.o build/Debug/GNU-Linux-x86/source/MhtProcessingThread.o build/Debug/GNU-Linux-x86/source/MhtSendThread.o build/Debug/GNU-Linux-x86/source/Murty.o build/Debug/GNU-Linux-x86/source/PlotAsterixDecoder.o build/Debug/GNU-Linux-x86/source/ReceiveData.o build/Debug/GNU-Linux-x86/source/SplitGroup.o build/Debug/GNU-Linux-x86/source/Track.o build/Debug/GNU-Linux-x86/source/TrackAsterix.o build/Debug/GNU-Linux-x86/source/UdpServer_.o ../Estimator/dist/Debug/GNU-Linux-x86/libestimator.a /opt/intel/mkl/lib/intel64/libmkl_rt.so /opt/intel/tbb/lib/intel64/gcc4.4/libtbb.so /opt/intel/tbb/lib/intel64/gcc4.4/libtbbmalloc.sobuild/Debug/GNU-Linux-x86/source/Assoc.o: In function `~parallel_do_feeder_impl':/opt/intel/tbb/include/tbb/parallel_do.h:182: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/GroupFormation.o: In function `tbb::internal::throw_exception(tbb::internal::exception_id)':/opt/intel/tbb/include/tbb/tbb_exception.h:117: undefined reference to `tbb::internal::throw_exception_v4(tbb::internal::exception_id)'build/Debug/GNU-Linux-x86/source/GroupFormation.o: In function `~task_group_base':/opt/intel/tbb/include/tbb/task_group.h:121: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'/opt/intel/tbb/include/tbb/task_group.h:124: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'/opt/intel/tbb/include/tbb/task_group.h:129: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/GroupFormation.o: In function `~parallel_do_feeder_impl':/opt/intel/tbb/include/tbb/parallel_do.h:182: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/Mht.o: In function `~parallel_do_feeder_impl':/opt/intel/tbb/include/tbb/parallel_do.h:182: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/Mht.o:/opt/intel/tbb/include/tbb/parallel_do.h:182: more undefined references to `tbb::interface5::internal::task_base::destroy(tbb::task&)' followcollect2: ld returned 1 exit statusgmake[2]: *** [dist/Debug/GNU-Linux-x86/Assoc] Error 1gmake[2]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake[1]: *** [.build-conf] Error 2gmake[1]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake: *** [.build-impl] Error 2BUILD FAILED (exit value 2, total time: 41s)Alexy had suggested in this thread to try one of the example programs of TBB and use ldd, so when I tried, this is the output I got: ldd game_of_life linux-vdso.so.1 => (0x00007fff03c8a000) libtbb.so.2 => /usr/lib64/libtbb.so.2 (0x00007fbd2ffe8000) librt.so.1 => /lib64/librt.so.1 (0x000000302ce00000) libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x000000346e400000) libm.so.6 => /lib64/libm.so.6 (0x000000302be00000) libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x000000346e000000) libc.so.6 => /lib64/libc.so.6 (0x000000302c200000) libpthread.so.0 => /lib64/libpthread.so.0 (0x000000302c600000) libdl.so.2 => /lib64/libdl.so.2 (0x000000302ca00000) /lib64/ld-linux-x86-64.so.2 (0x000000302ba00000)Although from the build output, it appears the correct libraries are being linked: /opt/intel/tbb/lib/intel64/gcc4.4/libtbb.so /opt/intel/tbb/lib/intel64/gcc4.4/libtbbmalloc.so Update:After taking a backup of the files, I deleted the tbb include and lib files from /usr/lib64 and added -L/opt/intel/tbb/lib/intel64/gcc4.4 -I/opt/intel/tbb/include to the "Additional options" in the linker options.Build was successful this time.On running the executable, it gave the error/home/nkipe/NetBeansProjects/Assoc/dist/Debug/GNU-Linux-x86/assoc: error while loading shared libraries: libtbb.so.2: cannot open shared object file: No such file or directoryEven adding export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/opt/intel/tbb/lib/intel64/gcc4.4" to .bashrc and sourcing it with source ~/.bashrc did not help. The "cannot open shared object file: No such file or directory" error still occurs.ldd shows:ldd assoc linux-vdso.so.1
2025-04-19Build/Debug/GNU-Linux-x86/source/GateInfo.o build/Debug/GNU-Linux-x86/source/GenerateCostMatrix.o build/Debug/GNU-Linux-x86/source/GroupFormation.o build/Debug/GNU-Linux-x86/source/GroupHypo.o build/Debug/GNU-Linux-x86/source/GroupNode.o build/Debug/GNU-Linux-x86/source/Hungarian.o build/Debug/GNU-Linux-x86/source/Hypo.o build/Debug/GNU-Linux-x86/source/LapJv.o build/Debug/GNU-Linux-x86/source/Main.o build/Debug/GNU-Linux-x86/source/Measurement.o build/Debug/GNU-Linux-x86/source/MergeGroup.o build/Debug/GNU-Linux-x86/source/Mht.o build/Debug/GNU-Linux-x86/source/MhtProcessingThread.o build/Debug/GNU-Linux-x86/source/MhtSendThread.o build/Debug/GNU-Linux-x86/source/Murty.o build/Debug/GNU-Linux-x86/source/PlotAsterixDecoder.o build/Debug/GNU-Linux-x86/source/ReceiveData.o build/Debug/GNU-Linux-x86/source/SplitGroup.o build/Debug/GNU-Linux-x86/source/Track.o build/Debug/GNU-Linux-x86/source/TrackAsterix.o build/Debug/GNU-Linux-x86/source/UdpServer_.o ../Estimator/dist/Debug/GNU-Linux-x86/libestimator.a /opt/intel/mkl/lib/intel64/libmkl_rt.so /opt/intel/tbb/lib/intel64/gcc4.4/libtbb.so /opt/intel/tbb/lib/intel64/gcc4.4/libtbbmalloc.sobuild/Debug/GNU-Linux-x86/source/Assoc.o: In function `~parallel_do_feeder_impl':/opt/intel/tbb/include/tbb/parallel_do.h:182: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/GroupFormation.o: In function `tbb::internal::throw_exception(tbb::internal::exception_id)':/opt/intel/tbb/include/tbb/tbb_exception.h:117: undefined reference to `tbb::internal::throw_exception_v4(tbb::internal::exception_id)'build/Debug/GNU-Linux-x86/source/GroupFormation.o: In function `~task_group_base':/opt/intel/tbb/include/tbb/task_group.h:121: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'/opt/intel/tbb/include/tbb/task_group.h:124: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'/opt/intel/tbb/include/tbb/task_group.h:129: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/GroupFormation.o: In function `~parallel_do_feeder_impl':/opt/intel/tbb/include/tbb/parallel_do.h:182: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/Mht.o: In function `~parallel_do_feeder_impl':/opt/intel/tbb/include/tbb/parallel_do.h:182: undefined reference to `tbb::interface5::internal::task_base::destroy(tbb::task&)'build/Debug/GNU-Linux-x86/source/Mht.o:/opt/intel/tbb/include/tbb/parallel_do.h:182: more undefined references to `tbb::interface5::internal::task_base::destroy(tbb::task&)' followcollect2: ld returned 1 exit statusgmake[2]: *** [dist/Debug/GNU-Linux-x86/Assoc] Error 1gmake[2]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake[1]: *** [.build-conf] Error 2gmake[1]: Leaving directory `/home/nkipe/NetBeansProjects/Assoc'gmake: *** [.build-impl] Error 2BUILD FAILED (exit value 2, total time: 41s)Alexy had suggested in this thread to try one of the example programs of TBB and use ldd, so when I tried, this is the output I got: ldd game_of_life linux-vdso.so.1 => (0x00007fff03c8a000) libtbb.so.2 => /usr/lib64/libtbb.so.2 (0x00007fbd2ffe8000) librt.so.1 => /lib64/librt.so.1 (0x000000302ce00000) libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x000000346e400000) libm.so.6 => /lib64/libm.so.6 (0x000000302be00000) libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x000000346e000000) libc.so.6 => /lib64/libc.so.6 (0x000000302c200000) libpthread.so.0 => /lib64/libpthread.so.0 (0x000000302c600000) libdl.so.2 => /lib64/libdl.so.2 (0x000000302ca00000) /lib64/ld-linux-x86-64.so.2 (0x000000302ba00000)Although from the build output, it appears the correct libraries are being linked: /opt/intel/tbb/lib/intel64/gcc4.4/libtbb.so /opt/intel/tbb/lib/intel64/gcc4.4/libtbbmalloc.so Update:After taking a backup of the files, I deleted the tbb include and lib files from /usr/lib64 and added -L/opt/intel/tbb/lib/intel64/gcc4.4 -I/opt/intel/tbb/include to the "Additional options" in the linker options.Build was successful this time.On running the executable, it gave the error/home/nkipe/NetBeansProjects/Assoc/dist/Debug/GNU-Linux-x86/assoc: error while loading shared libraries: libtbb.so.2: cannot open shared object file: No such file or directoryEven adding export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/opt/intel/tbb/lib/intel64/gcc4.4" to .bashrc and sourcing it with source ~/.bashrc did not help. The "cannot open shared object file: No such file or directory" error still occurs.ldd shows:ldd assoc linux-vdso.so.1 => (0x00007fffd359a000) /opt/intel/mkl/lib/intel64/libmkl_rt.so (0x00007fbf705f9000) libtbb.so.2 => not found libtbbmalloc.so.2 => not found libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x000000346e400000) libm.so.6 => /lib64/libm.so.6 (0x000000302be00000) libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x000000346e000000) libc.so.6 => /lib64/libc.so.6 (0x000000302c200000) libpthread.so.0 => /lib64/libpthread.so.0 (0x000000302c600000) libdl.so.2 => /lib64/libdl.so.2 (0x000000302ca00000) /lib64/ld-linux-x86-64.so.2 (0x000000302ba00000)How can it not be found when I have linked it and the program got built successfully? Solved! The /opt/intel/tbb folder was actually a link to a folder in the composer folder's tbb. Maybe that's why the .so.2's could not be found. I downloaded tbb30_20100406oss and pointed all paths to it. After building, although I wasn't able to run it via Netbeans because of a /home/nkipe/NetBeansProjects/Association/dist/Debug/GNU-Linux-x86/assoc: error while loading shared libraries: libtbb.so.2: cannot open shared object file: No such file or directory error, I was able to run it via the commandline.Thanks a lot Raf and Christopher!!! :-) To make sure we're on the same page, please create a new shell, and use it to consecutively echo the path, list the *.so.2 contents of the relevant directory (full output to see permissions), do ldd assoc, and then ./assoc.(Added) Oops, didn't see the
2025-03-29