-
Notifications
You must be signed in to change notification settings - Fork 316
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
Build of testthat fails #1373
Comments
glibc changed |
Yeap, this is failing in Fedora rawhide with the latest glibc version. |
This just bit me today trying to get R 4.1 on Fedora (which is only available on rawhide currently) set up so that I could resolve all the changes that were made to testthat and vdiffr with the latest release. Compiling testhat from source there failed with the same issues as reported by @linusheinz and @Enchufa2 |
Any suggestions on how to fix this? |
Two options:
|
Actually, looks like this has been fixed in the upstream code and it's just a matter of updating catch to the latest release: https://github.com/catchorg/Catch2/releases/tag/v2.13.5 |
Ah, I didn't realise it was vendored code. So that's it, you just need to update. :) |
Unfortunately it is not entirely trivial to update the Catch code, as the current code uses Catch1, not Catch2, which has some breaking changes. The most significant of which is that Catch2 requires full support for C++11. |
Added building script for reference: - docker-build.sh - host-build.sh Code ported to 2023: - fixed opencv4 - fixed jsoncpp - fixed typedef for pybind11 definitions - fixed syscall issues related to SIGSTKSZ ( see more: r-lib/testthat#1373 (comment) )
# isoband 0.2.7 - Remove compile-time dependency on testthat. - Changed maintainer after the original author (Claus Wilke) donated codebase to r-lib. isoband 0.2.6 ---------------------------------------- - Update to the latest testthat headers for compatibility with LLVM clang 15.0.0. - Correct label angle for current aspect ratio in `isolines_grob()` (#28, @eliocamp). isoband 0.2.5 ---------------------------------------- - Add a new label placer function `label_placer_middle()` (#24, @jamarav). - The vendored testthat/catch code now uses a constant value for the stack size rather than relying on `SIGSTKSZ`. See: r-lib/testthat#1373
When I try to build the current master it fails with
`
../inst/include/testthat/vendor/catch.h:6495:33: error: size of array ‘altStackMem’ is not an integral constant-expression
6495 | static char altStackMem[SIGSTKSZ];
size of array ‘altStackMem’ is not an integral constant-expression
6546 | char FatalConditionHandler::altStackMem[SIGSTKSZ] = {};
`
With gcc version: 11.1.1
The text was updated successfully, but these errors were encountered: