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

Problem Installing on Linux Redhat

rockingsoul
Beginner
929 Views

Hello, I am trying to install TBB on a Linux Redhat to do my school project. I downloaded the newest TBB 2.1 for Linux, and tried to compile the provided GettingStarted example by executing the MAKE command in the example directory. But I am getting errors:

sub_string_finder.cpp:32:37: tbb/task_scheduler_init.h: No such file or directory

I am thinking that I am probably not sourcing the correct "tbbvars.csh" file. My system is:

gcc version 3.4.6 20060404 (Red Hat 3.4.6-10)

Linux ccblincad14.ece.gatech.edu 2.6.9-67.0.20.

The downloaded package provides four different tbbvars.csh. I tried all of them but still it gives the same error saying those header files are not found.

I am wondering if I am missing some steps or is this version of Linux supported by TBB? My downloaded TBB package has those directories:

cc3.2.3_libc2.3.2_kernel2.4.21

cc3.3.3_libc2.3.3_kernel2.6.5

cc3.4.4_libc2.3.4_kernel2.6.9

cc4.1.0_libc2.4_kernel2.6.16.21

Like I mentioned earlier, my GCC version is 3.4.6, and if I am not mistaken, my kernel version is 2.6.9

I don't have root access but I don't think that is the problem. Do I need to do some gmake thing?

Thank you so much for your helps and suggestions here first!

Tan

0 Kudos
1 Solution
AJ13
New Contributor I
929 Views

You need to download the source package. I believe you need to type make in the root directory of the download package.

AJ

View solution in original post

0 Kudos
3 Replies
AJ13
New Contributor I
930 Views

You need to download the source package. I believe you need to type make in the root directory of the download package.

AJ

0 Kudos
rockingsoul
Beginner
929 Views
Quoting - AJ

You need to download the source package. I believe you need to type make in the root directory of the download package.

AJ

Thank you so much! That definitely solved the problem. I can't believe I spent so much time on this.

0 Kudos
Alexey-Kukanov
Employee
929 Views
Actually, having a source package is not necessary in order to use TBB. You did it almost right - of all provided .csh cc*_libc*_kernel* directories you needed to select the one closest to your GCC version, and source the tbbvars file out there - that should be enough to use TBB.
However, /examples/Makefile that you probably used does not work without build directory and makefiles there. The proper way would be to go to e.g. /examples/GettingStarted/sub_string_finder and run make there.
We need to think how to fix this problem. Thanks for reporting it.
0 Kudos
Reply