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

MinGW and TBB installation

nath02
Beginner
3,461 Views

Hi everybody !

I really need some help, here's my problem : I have to work on a project in c++ and I have to parallelise it.

I have un computer with 8 CPU's (Windows 7)and I have to work with Eclipse and MinGW.

BUT how can I install TBB with MinGW ? I mean, I read a lot of articles and documentations on Windows installation but, that's usually talking about Visual Studio and I must not use that.

How could I do tobuild TBB? Do you have any solution ? I'm completly lost and quite tired. I have already lost a lot of time on this installation and I'm quite annoyed...

If someone had succeeded in that kind of installation, could you explain to me in details how you did so ?

Really, thanks in advance, I really need your help.

Thanks again.

Here's my compilator configuration :gcc 3.4.5

0 Kudos
59 Replies
Vladimir_P_1234567890
1,887 Views

hello, you can build tbb from sources using below command and you'll get binaries compatible with mingw

gmake compiler=gcc

--Vladimir

0 Kudos
nath02
Beginner
1,887 Views

Thank you.

Can I build all your TBB versions ? Even the newest ones ? Do I need a specific file ?

Actually, I downloaded theses files :

- tbb22_20090809oss_src.tgz (and then depacked)
- tbb22_20090809oss_win.zip

Do I need something else ? I have to say that I'm a real beginner in this domain, so excuse me to ask you this kind of questions...

And, I don't have the gmake command (yet I have installed minGW). When I use something like "mingw32-make" in the directory of these files I have the message "No targets specified and no makefile found".

What's my error ?

Thank you very much for your help, really.

0 Kudos
Vladimir_P_1234567890
1,887 Views

tbb22_20090809oss_src.tgz is good package to use. you need to change dir to the unpacked archive. there you should see Makefile, COPYING and other files and folders. there you need to invoke mingw32-make. and make sure that mingw32-make has version 3.81 by launching 'mingw32-make -v' command.

--Vladimir

0 Kudos
nath02
Beginner
1,887 Views

All right, I put the unpacked _src in the unpacked tbb22_20090809oss and then, I foundaMakefile.win in the dir "examples\common\gui".

So, Iput it in the root dir, and then did mingw32-make. But I have the answer : mingw32-make : Nothing to bedone for 'default'.

Did I do something wrong?

Thank you

0 Kudos
Vladimir_P_1234567890
1,887 Views

hi nath02,

I think you need to keep things simple. you need to unpack sources, change dir to tbb22_20090809oss folder. The folder content should be following:

build
doc
examples
include
src
changes
copying
index.html
Makefile
readme

then in this directory you need to execute
mingw32-make.exe compiler=gcc

and compilation should be started then.

cheers,
--Vladimir

0 Kudos
nath02
Beginner
1,887 Views

So, I did what you said. But it's weird :

In myfolder tbb22_20090809oss I have, once unpacked :

  • doc
  • examples
  • ia32
  • include
  • intel64
  • CHANGES
  • COPYING
  • README

and tbb22_20090809oss_src (when I unpacked the archive .tgz I had only this file). I don't have the files that you described in your previous post, as you can see (as Makefile, build, etc.).

I'm really sorry, and very confused, I should understand faster...

But thank you again for your help and your patience...

0 Kudos
RafSchietekat
Valued Contributor III
1,887 Views
tbb22_20090809oss_src.tgz unpacks to a directory tbb22_20090809oss; you don't need tbb22_20090809oss_win.zip at all. Reread #5 with that in mind.
0 Kudos
nath02
Beginner
1,887 Views
Ok.... But in this case I only have one file (sources) ... No Makefile, no "build" directory, etc.
0 Kudos
nath02
Beginner
1,887 Views

Vladimir,

I'm really sorry but when I unpacked tbb22_20090809oss_src.tgz I don't see any files. Just, tbb22_20090809oss_src of course. (no build, no Makefile, nothing).

I really don't understand.

0 Kudos
RafSchietekat
Valued Contributor III
1,887 Views

I was assuming no errors in the packaging, I'll have a look...

(Added) Works for me on Linux (prompt changed to protect the innocent):

% openssl md5 tbb22_20090809oss_src.tgz

MD5(tbb22_20090809oss_src.tgz)= c621053887c7ee86932da43e2deb3bff

% cat tbb22_20090809oss_src.tgz | gunzip | gtar xf -

% ls tbb22_20090809oss

CHANGES COPYING Makefile README build doc examples include index.html src

%

0 Kudos
nath02
Beginner
1,887 Views

Oh, okay I see what you did.

I unpack tbb22_20090809oss_src.tgz with the soft IZArc (because it's able to unpack .tgz), maybe the problem comes from that ?

What can I use ?

0 Kudos
RafSchietekat
Valued Contributor III
1,887 Views
.tgz is the same as .tar.gz, and maybe IZArc behaves differently if you rename the package, e.g., giving the expanded file a .tar extension and then knowing what to do with it next. Otherwise http://www.mingw.org/wiki/Getting_Started should get you started (didn't you already do this to install MinGW in the first place?).
0 Kudos
Vladimir_P_1234567890
1,887 Views

Hi nath02,

if you see tbb22_20090809oss_src or tbb22_20090809oss_src.tar it looks you just unzipped the archive without untarring it.

to get sources you can use following command or its MinGW equivalent

tar -xzf ./tbb22_20090809oss_src.tgz

after all you should see tbb22_20090809oss folder (without _src suffix) and the files inside it.

--Vladimir

0 Kudos
nath02
Beginner
1,887 Views

Thank you very much, I understood.

It's ok now, I have all the files. But, (I hope a last question), I ran the command "mingw32-make", and, how can I say that, it seems to be running for 30min now, and nothing appears on my DOS console. Is it normal that it takes so much time ?

(edit) Furthermore, when I look at the tasks manager of windows I see "mingw32-make.exe*32" Memory : 1.616K.

But nothing happens in my DOS console, nothing.I'm waiting since 3 hours and I don't even have an error message.

0 Kudos
nath02
Beginner
1,887 Views

I have to add that I just tested mingw32-make with a simple program and its Makefile, and everything was all right. So it doesn't come from mingw32-make.exe actually.

Do you have an idea ? (Maybe, I have to change something in the Makefile to set it to my computer ?)

0 Kudos
Vladimir_P_1234567890
1,887 Views

you can try the command

mingw32-make compiler=gcc arch=ia32

it should start inalmost the same time as simple example. No changes to makefiles are needed.

--Vladimir

0 Kudos
nath02
Beginner
1,887 Views

When I do that, I have this error message :

'untime' is unknown as an internal or externalcommand, a executable program or a command file.

build/common.inc:57: *** Runtime version not detected. Stop.

0 Kudos
Vladimir_P_1234567890
1,887 Views

it is much better. it does not hang at least:)

what gmake version installed on your machine ("mingw32-make.exe -v")? it should be 3.81

can you also try the following command

mingw32-make.exe compiler=gcc arch=ia32 runtime=mingw

it disables autodetection.

--Vladimir

0 Kudos
nath02
Beginner
1,887 Views

So, yes, as you said in a first post, I changed the make version, so now I jave this one :

GNU Make 3.81, so I think it's good.

But now, when I add to the command line 'runtime=mingw' nothing happens at all. It seems to be on stand by, as described before... Maybe does it come from a environment variable or something like this ?

0 Kudos
nath02
Beginner
1,630 Views
So, I don't understand what's happening. I did again all you said to me on your previous posts and I still have the same errors...
0 Kudos
Reply