You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In file included from /build/source/tests/unit_tests.cpp:25:
/build/source/external/Catch/catch.hpp:6470:41: error: array bound is not an integer constant before ']' token
6470 | static char altStackMem[SIGSTKSZ];
| ^
/build/source/external/Catch/catch.hpp: In constructor 'Catch::FatalConditionHandler::FatalConditionHandler()':
/build/source/external/Catch/catch.hpp:6489:30: error: 'altStackMem' was not declared in this scope
6489 | sigStack.ss_sp = altStackMem;
| ^~~~~~~~~~~
/build/source/external/Catch/catch.hpp: At global scope:
/build/source/external/Catch/catch.hpp:6521:53: error: array bound is not an integer constant before ']' token
6521 | char FatalConditionHandler::altStackMem[SIGSTKSZ] = {};
| ^
Expected Behavior
PCMSolver should compile with recent Glibc versions.
Current Behavior
Glibc >= 2.34 breaks PCMSolver
Possible Solution
Update the catch code to be compatible with recent Glibc? (I am no C++ dev myself)
Steps to Reproduce (for bugs)
nix build nixpkgs/f35d4e3c73eaecfa5d1eabdcfd14d8047b440a15#pcmsolver --print-build-logs
or build on probably any other linux with glibc >= 2.34
Context
I am maintaining pcmsolver in NixOS and nixpkgs. The glibc incompatibility of PCMSolver unfortunately also breaks Psi4 and Dalton in Nixpkgs/NixOS.
The glibc change apparently also bit other people, e.g.:
Thanks for reporting. This is indeed an annoyance. As you suggest, upgrading the bundled version of Catch would solve the issue. I'll try to patch it up during the week. I'm rewriting this library from scratch, so it's not exactly high priority, but since it broke a lot of packages, it must be fixed.
PCMsolver cannot build with recent glibc version. The issue seems to be, that in glibc >= 2.34
SIGSTKSZ
is not constant anymore. This leads to type errors in theCatch
code:Expected Behavior
PCMSolver should compile with recent Glibc versions.
Current Behavior
Glibc >= 2.34 breaks PCMSolver
Possible Solution
Update the catch code to be compatible with recent Glibc? (I am no C++ dev myself)
Steps to Reproduce (for bugs)
nix build nixpkgs/f35d4e3c73eaecfa5d1eabdcfd14d8047b440a15#pcmsolver --print-build-logs
or build on probably any other linux with glibc >= 2.34
Context
I am maintaining pcmsolver in NixOS and nixpkgs. The glibc incompatibility of PCMSolver unfortunately also breaks Psi4 and Dalton in Nixpkgs/NixOS.
The glibc change apparently also bit other people, e.g.:
Your Environment
The text was updated successfully, but these errors were encountered: