Intel® oneAPI Threading Building Blocks
Ask questions and share information about adding parallelism to your applications when using this threading library.

Where is libtbb.so.2

Nav
New Contributor I
2,243 Views

Wanted to see if TBB works with Purify.

Tried purify g++ -g -ltbb -o matrixMUL matrixMUL.cpp

and got this error:

Instrumenting:

Purify engine: Error: Couldn't open file libtbb.so.2: skipping.
ccxEPWiV.o
Purify engine: Error: Errors detected while instrumenting files.
Linking suppressed.
(To force continuation, use "purify -best-effort $(CC) ...".)

I couldn't find any libtbb.so.2 files on my system. I had downloaded the TBB source and run gmake.

0 Kudos
7 Replies
Nav
New Contributor I
2,243 Views
Same problem with quantify:

Instrumenting: crt1.o crti.o crtbegin.o
Quantify engine: Error: Couldn't open file libtbb.so.2: skipping.
ccAdctrX.o libstdc++.so.6 libm.so.6 libgcc_s.so.1 libgcc.a......................................................................... libc.so.6 libc_nonshared.a.............. crtend.o crtn.o libdl.so.2
Quantify engine: Error: Errors detected while instrumenting files.
Linking suppressed.
(To force continuation, use "quantify -best-effort $(CC) ...".)

could anyone help with an explanation?
0 Kudos
Alexey-Kukanov
Employee
2,243 Views
Quoting Nav
I couldn't find any libtbb.so.2 files on my system. I had downloaded the TBB source and run gmake.

Then you should find the files in build/linux__release (or _debug, if you would need a debug version).

0 Kudos
Nav
New Contributor I
2,243 Views

Found it! Do I need to set some path variables so that Purify and Quantify would be able to find it?

I've already set these paths in .bashrc:

export TBB22_INSTALL_DIR="/home/username/TBB/tbbSource"
export CPATH="/home/username/TBB/tbbSource/include"
export LIBRARY_PATH="/home/username/TBB/tbbSource/build/linux_ia32_gcc_cc4.1.2_libc2.7_kernel2.6.23.1_release"
export LD_LIBRARY_PATH="/home/username/TBB/tbbSource/build/linux_ia32_gcc_cc4.1.2_libc2.7_kernel2.6.23.1_release"

Anything else other than these?

0 Kudos
Alexey-Kukanov
Employee
2,243 Views

The same directory should also contain tbbvars.sh files which you could either source to set the environment, or use as a reference.

By the way, TBB22_INSTALL_DIR is useful to ease running our examples, but not required for TBB to function.

0 Kudos
Nav
New Contributor I
2,243 Views

Ran the script in the debug folder too. Checked whether the path got set by echo'ing the variable. It was set.

Ran purify to encounter the same error. Somehow, purify is not able to find the libtbb.so.2 file even though the path is set.

0 Kudos
Alexey-Kukanov
Employee
2,243 Views

Unfortunately I do not know much about Purify and where it looks for shared libraries. I guessyou tried to build the app with plain GCC first, just to check that the environment is fine?

0 Kudos
Nav
New Contributor I
2,243 Views

Thanks Alexy. Yes the application compiles and runs fine without Purify.

I was surprised that this thread got >1800 views so suddenly. I was under the impression that somebody was very keenly following up on why this doesn't work.

I would appreciate any help from anyone who knows what went wrong.

0 Kudos
Reply