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

I need an old version of Intel TBB... where can I get it?

Andre_B_2
Beginner
1,727 Views

Hi,

I need to compile a program, which apparently needs Intel TBB version 3.x in order to run properly

I tried, of course, linking Intel TBB 4.2 and compiling it with appropriate flags and include directories, without any success...

Is there somewhere I can get such an old version of TBB?

0 Kudos
5 Replies
robert-reed
Valued Contributor II
1,727 Views

Intel Threading Building Blocks should provide forward compatibility for codes written for previous releases.  Can you describe the nature of the failures you're seeing?  Compile, link or runtime issues?

As you probably have discovered, the Intel TBB open source website offers archived versions of Intel TBB back to 4.0 but does not provide any 3.X versions there.  I can ask about access to older archives, but I'm mostly curious about your answers to the questions I posed above.

0 Kudos
Andre_B_2
Beginner
1,727 Views

Hi,

Thanks for the answer

I'm trying to build this program https://github.com/bchoi/ParKD

I'm running Ubuntu 12.04 and I have Parallel Studio installed. Just in case, I have compiled TBB 4.2 from source as well, just in case. 
There's a Makefile.tbb_version which needs to be edited according to your release of TBB.

Mine is as follow

[bash]TBB_HOME = /opt/intel/tbb
TBB_ARCH = intel64/gcc4.4
TBB_INC = $(TBB_HOME)/include
TBB_LIB = $(TBB_HOME)/lib/$(TBB_ARCH)[/bash]

 I tried compiling it with both gcc 4.6 and 4.8. Tried with icpc too. Nothing worked.

I tried: setting the environmental variables using the scripts provided with Parallel Studio XE 2013, using the -L (PATH TO LIB) -ltbb switch, using the -I(PATH TO INCLUDES) switch... well, I guess I tried everything I could...

All I get is the output I attached to this post... I just can't find a way to make this work...

EDIT: I use this small script to set all environment variables

[bash]#!/bin/bash

source /opt/intel/advisor_xe/advixe-vars.sh
source /opt/intel/vtune_amplifier_xe/amplxe-vars.sh
source /opt/intel/inspector_xe/inspxe-vars.sh
if [ /opt/intel/composerxe/bin/compilervars.sh ]; then
source /opt/intel/composerxe/bin/compilervars.sh intel64
echo -e "\nVariáveis dos compiladores e bibliotecas Intel setadas!"
else echo -e "\nArquivo das variáveis dos compiladores da Intel não encontrados!"
fi[/bash]

0 Kudos
Vladimir_P_1234567890
1,727 Views

hello Andre,

was there any diagnostics above logs that you have provided that "library is not compatible" or "not found"? logs show that the library wasn't linked to the project

--Vladimir 

0 Kudos
Andre_B_2
Beginner
1,727 Views

No... and now that you said this...

Is there any reason for a library to not link with a program other than wrong scripting? I'll try taking a look in the makefile when I get home.

0 Kudos
Andre_B_2
Beginner
1,727 Views

After some digging, I found out TBB won't link if I use any version of GCC newer than 4.4. I tested with 4.4 and it compiled. I thought of that, but since I had compiled lots of old software that claimed to be incompatible with newer compilers without any problemas. I'm not the most experienced guy when it comes to this (I'm a 1st year computer engineering).

Since I installed GCC 4.4, it now also compiles with icc too. Guess it has to do with some of the libraries it enabled when it's the default GCC.

Thank you guys, sorry for the inconveniece

0 Kudos
Reply