fix(patches): build RcppParallel against system oneTBB instead of disabling TBB #135
Loading…
Reference in a new issue
No description provided.
Delete branch "t3code/rcppparallel-system-tbb"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What
Replace RcppParallel's
disable-tbbregistry patch withsystem-tbb: build RcppParallel against the system oneTBB instead of stripping TBB entirely.Why
disable-tbbskipped the bundled Intel TBB build by forcing the TinyThread backend, which also removed RcppParallel's TBB linkage.That broke every dependent that links TBB through
RcppParallelLibs()--rstanand the whole Stan cluster -- withsymbol not found: tbb::detail::r1::observe.This is the root cause behind the large "blocked on RcppParallel" / rstan clusters (issues #115, #120): the packages were not individually broken, they were all waiting on one TBB-linkage regression.
Change
system-tbb.patchleavesUSE_TBBunset (so the bundled build is still skipped on musl and g++ 15) but keeps the TBB backend and links the system oneTBB now shipped in the build-env images:Scoped to
alpine+ubuntu-2604, the only platforms where the bundled build fails; redhat and older ubuntus keep the bundled TBB.Requires
The companion image change that exports
TBB_INC/TBB_LIBsoRcppParallelLibs()hands the system-TBB flags to dependents: build-env-images PR #12. Both must ship together.Verified
In
build-env-alpine:3.24with the new images:RcppParallelLibs()returns-L/usr/lib -Wl,-rpath,/usr/lib -ltbb -ltbbmalloc.-ltbb -ltbbmalloc) and loads with no missing symbol --* DONE (rstan), trial build exit 0.