Opened 2 years ago
Closed 18 months ago
#66280 closed defect (fixed)
Dependents of TBB should depend on onetbb or tbb, whatever installed
Reported by: | barracuda156 | Owned by: | catap (Kirill A. Korinsky) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.8.0 |
Keywords: | Cc: | cooljeanius (Eric Gallager) | |
Port: | blender, bowtie, bowtie2, deal.ii, embree, gerbil, oidn, openimageio, opensubdiv, openvdb, opencascade, py-mkl, py-pytorch, qore, root6, usd |
Description
Otherwise this happens:
36-84:~ svacchanda$ sudo port -v -n install qore -universal ---> Computing dependencies for qore.. Error: Can't install tbb because conflicting ports are active: onetbb Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug. Error: Processing of port qore failed
tbb
and onetbb
conflict.
Change History (10)
comment:1 Changed 2 years ago by cooljeanius (Eric Gallager)
Cc: | cooljeanius added |
---|
comment:2 Changed 2 years ago by barracuda156
Owner: | set to catap |
---|---|
Status: | new → assigned |
comment:3 follow-up: 4 Changed 2 years ago by reneeotten (Renee Otten)
comment:4 Changed 2 years ago by barracuda156
Replying to reneeotten:
according to the internet these ports are not drop-in replacements so I doubt that will work for all ports and for sure should be investigate on an individual basis.
Then maybe it is worth implementing a parallel installation.
comment:5 Changed 2 years ago by catap (Kirill A. Korinsky)
Base on https://oneapi-src.github.io/oneTBB/main/tbb_userguide/Migration_Guide/Mixing_Two_Runtimes.html it seems possible not only install both, but also load both into the same application.
comment:6 Changed 2 years ago by catap (Kirill A. Korinsky)
After some digging I'd like to point that OneTBB is updated version for TBB.
Unfortunately API isn't compatible. For example oce
port depends on old TBB, because OneTBB drops tbb::atomic
in favor of std::atomic
.
Also, an author of oce
points that it shouldn't be used https://github.com/tpaviot/oce/issues/745, and better to switch OCCT: https://github.com/Open-Cascade-SAS/OCCT
=> I feel that we should start to switching ports from TBB to OneTBB when it is possible. Sergey, are you ready for it? :)
comment:7 Changed 2 years ago by catap (Kirill A. Korinsky)
Oh, OneTBB is also conflicts with Qt: https://github.com/oneapi-src/oneTBB/issues/547
That makes such update much harder
comment:8 follow-up: 9 Changed 2 years ago by catap (Kirill A. Korinsky)
I've opened a PR which switched some ports from TBB to OneTBB: https://github.com/macports/macports-ports/pull/16835
I don't think it is possible to use both, we should choise which one.
Frankly, tbb port should be legacy for some old ports. For now I found only one that really depends on it: oce.
comment:9 Changed 2 years ago by barracuda156
Replying to catap:
I've opened a PR which switched some ports from TBB to OneTBB: https://github.com/macports/macports-ports/pull/16835
I don't think it is possible to use both, we should choise which one.
Frankly, tbb port should be legacy for some old ports. For now I found only one that really depends on it: oce.
I am fine with switching most of ports to oneTBB and keeping old TBB for compatibility. (We need my fixes for oneTBB to make it build on PPC now, otherwise all TBB dependencies will be left broken on PPC.)
comment:10 Changed 18 months ago by catap (Kirill A. Korinsky)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
according to the internet these ports are not drop-in replacements so I doubt that will work for all ports and for sure should be investigate on an individual basis.