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

X Window System support

RafSchietekat
Valued Contributor III
270 Views

I just installed a GNU/Linux Ubuntu 12.04.4 LTS server (Amazon EC2 image in case it's relevant) with "sudo apt-get install xorg-dev", but tbb42_20140122oss/examples/common/gui/Makefile.gmake would not recognise the installed libraries (see http://packages.ubuntu.com/precise/libx11-dev, [list of files], to see what paths were used instead). I don't remember this being an issue with the Ubuntu desktop installation on my previous laptop computer, which is a bit strange.

The workaround was easy enough at lines 50 and 58 assuming a 64-bit build, and even blending in with the general 32/64 support would be doable, but who knows what other paths are out there in the wild?

Also, this worked without changing UI_CXXFLAGS or LIBS (/usr/X11R6/...), which also seemed a bit odd.

Does anybody have any suggestions about possible other locations, or a comment on this particular situation, that might be relevant to a patch?

0 Kudos
2 Replies
RafSchietekat
Valued Contributor III
270 Views

(Note to self: remember that first posts are not editable…)

On my laptop computer I had the previous LTS version, but it's still strange.

0 Kudos
RafSchietekat
Valued Contributor III
270 Views

Somehow I didn't immediately find this before, but here's some useful information. It was indeed a change introduced between the two LTS versions mentioned above, and its scope is probably all distributions in the Debian family (so it's not an Ubuntu-only quirk), while other families may or may not join in later (I only found something from 2012 that said they hadn't and stopped looking further, but it would probably be irrelevant for TBB whether and when they do). The paths are known by compiler and linker, so there's no -L to worry about.

Some links for the curious: http://askubuntu.com/questions/52617/what-is-usr-lib-i386-linux-gnu-for (first find), https://wiki.ubuntu.com/MultiarchSpec (referenced description), http://err.no/debian/amd64-multiarch-3 (remark about /usr/lib64), https://wiki.debian.org/Multiarch/Tuples (specific names used), http://stackoverflow.com/questions/12312053/why-does-linux-multiarch-use-x86-64-linux-gnu-instead-of-lib64 (2012 remark about non-Debian distributions)

Now it's a matter of mapping TBB makefile "arch" values to multi-arch tuple names...

(Added) Patch for ia32, ia64, intel64.

0 Kudos
Reply