Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linux builds without TBB on Ubuntu 18 #2

Open
asmaloney opened this issue Apr 16, 2020 · 3 comments
Open

Linux builds without TBB on Ubuntu 18 #2

asmaloney opened this issue Apr 16, 2020 · 3 comments
Labels
bug Something isn't working Linux

Comments

@asmaloney
Copy link
Member

asmaloney commented Apr 16, 2020

Describe the bug

The cmake files were rewritten for this library and they use the "modern" approach. This means that they use find_package CONFIG mode to find libraries and then use target_link_libraries to bring everything in.

Ubuntu 18.04 does not install the TBB cmake file (TBBConfig.cmake) needed to make this work properly.

Ubuntu Name libtbb-dev Required Files?
18.04 bionic 2017.x No
19.04 disco 2018.x Yes
19.10 eoan 2019.x Yes
20.x focal 2020.x Yes

So another strategy is needed. Hopefully one cleaner than the FindTBB.cmake versions that are floating around.

(Updated to add info about CONFIG mode and links to packages.)

@asmaloney asmaloney added bug Something isn't working Linux labels Apr 16, 2020
@asmaloney
Copy link
Member Author

I'm trying to avoid special cases, but maybe fallback on failure to the FindTBB we were using before? At least until Ubuntu 18 goes away.

@EpicWink
Copy link

EpicWink commented Apr 28, 2020

To use FindTBB.cmake, I had to set CMAKE_MODULES_PATH=/usr/share/cmake/Modules (or CMAKE_MODULE_PATH, one of the two)

On Ubuntu 19.10, with libtbb-dev installed

Side-note: I get linking errors when I try to build with TBB, but that's #33

@asmaloney
Copy link
Member Author

To reiterate what I mention in #33, we are using CONFIG mode, not MODULE mode. (I updated original post.)

So we want TBBConfig.cmake, not FindTBB.cmake. It looks like Ubuntu 18.04 has neither file, 19.10 has both, and 20 only has the config file. So maybe to find the correct file on 19 we need to force CONFIG mode (see #33).

asmaloney added a commit that referenced this issue Apr 28, 2020
Ubuntu 19.x includes files for both CONFIG (TBBMakeConfig.cmake) and MODULE (FindTBB.cmake) style find_package. We need to force CONFIG because that is the style we are expecting.

Related #2
Fixes #33
asmaloney added a commit that referenced this issue Apr 28, 2020
Ubuntu 19.x includes files for both CONFIG (TBBMakeConfig.cmake) and MODULE (FindTBB.cmake) style find_package. We need to force CONFIG because that is the style we are expecting.

Related #2
Fixes #33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working Linux
Projects
None yet
Development

No branches or pull requests

2 participants