BYOD
BYOD copied to clipboard
[BUG] Compilation error in Eigen Memory.h
Describe the bug Failing to compile
To Reproduce Steps to reproduce the behavior:
- Compile
- cmake -Bbuild -DCMAKE_BUILD_TYPE=Release THIS WORKS OK
- cmake --build build --config Release --parallel 4 FAILS
4.Error
BYOD/modules/RTNeural/RTNeural/../modules/Eigen/Eigen/src/Core/util/Memory.h:1245:12: error: no member named 'construct_at' in namespace 'std'
using std::construct_at;
In file included from
Desktop (please complete the following information):
- OS: MacOS
- cmake --version cmake version 3.23.0
- The C compiler identification is AppleClang 12.0.5.12050022
- The CXX compiler identification is AppleClang 12.0.5.12050022 -- VERSION for JUCE: 7.0.5
Thanks for reporting the issue! There's a few things that could be the issue here.
First off, std::construct_at is a C++20 feature, so you may need to double-check that your compiler supports C++20, and the construct_at feature. I believe AppleClang 12.0.5 should satisfy this requirement, but I'm not 100% sure. In our CI pipelines we're using AppleClang14.0.0. Next, you may need to clear you CMake cache, in case the C++17 setting was left over from a previous build, and hasn't been cleared.
Next, please make sure that your clone of the BYOD repository is at the latest commit on the main branch, and that your submodules are up to date. In particular, the modules/RTNeural submodule should be at commit 113f6e2b61c04e534db722d55bc61b5064d6fdf1.
Finally, when running your CMake build, you may prefer to specify individual build targets, to see if the error occurs with all of them. For example: cmake --build build --config Release --parallel 4 --target BYOD_VST3