Repository navigation
Error when compiling ENDFtk (14%) #214
Description
Dear Forum,
When building a new version of ENDFtk, compilation errors when trying to build a test.
sudo cmake -DCMAKE_BUILD_TYPE=Release PYTHON_EXECUTABLE=/etc/python3.12/ ../
make -j8
Here is the terminal output:
[ 13%] Building CXX object _deps/catch2-build/src/CMakeFiles/Catch2.dir/catch2/matchers/catch_matchers_predicate.cpp.o
[ 13%] Building CXX object CMakeFiles/ENDFtk.python.dir/python/src/record/ListRecord.python.cpp.o
[ 13%] Building CXX object CMakeFiles/ENDFtk.python.dir/python/src/record/TabulationRecord.python.cpp.o
[ 13%] Building CXX object CMakeFiles/ENDFtk.python.dir/python/src/record/InterpolationRecord.python.cpp.o
[ 13%] Building CXX object _deps/catch2-build/src/CMakeFiles/Catch2.dir/catch2/matchers/catch_matchers_quantifiers.cpp.o
[ 13%] Building CXX object _deps/catch2-build/src/CMakeFiles/Catch2.dir/catch2/matchers/catch_matchers_string.cpp.o
In file included from /ENDFtk/build/_deps/range-v3-src/include/range/v3/range_fwd.hpp:20, from /ENDFtk/build/_deps/range-v3-src/include/range/v3/view/any_view.hpp:22, from /ENDFtk/python/src/views.hpp:11, from /ENDFtk/python/src/ENDFtk.python.cpp:7: /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:3190:19: error: declaration of ‘template<class Fn> template<class State, class A> using meta::detail::partition_<Fn>::invoke = meta::_t<meta::detail::partition_<Fn>::impl<State, A> >’ changes meaning of ‘invoke’ [-Wchanges-meaning] 3190 | using invoke = _t<impl<State, A>>; | ^~~~~~ /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:3185:34: note: used here to mean ‘using meta::invoke = typename Fn::invoke<A>’ 3185 | using type = if_<invoke<Fn, A>, pair<list<Yes..., A>, list<No...>>, | ^~~~~~~~~~~~~ /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:541:11: note: declared here 541 | using invoke = typename Fn::template invoke<Args...>; | ^~~~~~ [ 13%] Building CXX object _deps/catch2-build/src/CMakeFiles/Catch2.dir/catch2/matchers/catch_matchers_templated.cpp.o [ 13%] Building CXX object _deps/catch2-build/src/CMakeFiles/Catch2.dir/catch2/matchers/internal/catch_matchers_impl.cpp.o [ 13%] Building CXX object CMakeFiles/ENDFtk.python.dir/python/src/record/DirectoryRecord.python.cpp.o [ 14%] Building CXX object CMakeFiles/ENDFtk.python.dir/python/src/record/TapeIdentification.python.cpp.o In file included from /ENDFtk/build/_deps/range-v3-src/include/range/v3/view/all.hpp:18, from /ENDFtk/src/ENDFtk/ListRecord.hpp:8, from /ENDFtk/python/src/record/ListRecord.python.cpp:6: /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:3190:19: error: declaration of ‘template<class Fn> template<class State, class A> using meta::detail::partition_<Fn>::invoke = meta::_t<meta::detail::partition_<Fn>::impl<State, A> >’ changes meaning of ‘invoke’ [-Wchanges-meaning] 3190 | using invoke = _t<impl<State, A>>; | ^~~~~~ /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:3185:34: note: used here to mean ‘using meta::invoke = typename Fn::invoke<A>’ 3185 | using type = if_<invoke<Fn, A>, pair<list<Yes..., A>, list<No...>>, | ^~~~~~~~~~~~~ /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:541:11: note: declared here 541 | using invoke = typename Fn::template invoke<Args...>; | ^~~~~~ In file included from /ENDFtk/build/_deps/range-v3-src/include/range/v3/view/all.hpp:18, from /ENDFtk/src/ENDFtk/record/InterpolationBase.hpp:12, from /ENDFtk/src/ENDFtk/record.hpp:11, from /ENDFtk/src/ENDFtk/ControlRecord.hpp:7, from /ENDFtk/python/src/record/ControlRecord.python.cpp:6: /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:3190:19: error: declaration of ‘template<class Fn> template<class State, class A> using meta::detail::partition_<Fn>::invoke = meta::_t<meta::detail::partition_<Fn>::impl<State, A> >’ changes meaning of ‘invoke’ [-Wchanges-meaning] 3190 | using invoke = _t<impl<State, A>>; | ^~~~~~ /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:3185:34: note: used here to mean ‘using meta::invoke = typename Fn::invoke<A>’ 3185 | using type = if_<invoke<Fn, A>, pair<list<Yes..., A>, list<No...>>, | ^~~~~~~~~~~~~ /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:541:11: note: declared here 541 | using invoke = typename Fn::template invoke<Args...>; | ^~~~~~ In file included from /ENDFtk/build/_deps/range-v3-src/include/range/v3/view/all.hpp:18, from /ENDFtk/src/ENDFtk/TabulationRecord.hpp:9, from /ENDFtk/python/src/record/TabulationRecord.python.cpp:6: /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:3190:19: error: declaration of ‘template<class Fn> template<class State, class A> using meta::detail::partition_<Fn>::invoke = meta::_t<meta::detail::partition_<Fn>::impl<State, A> >’ changes meaning of ‘invoke’ [-Wchanges-meaning] 3190 | using invoke = _t<impl<State, A>>; | ^~~~~~ /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:3185:34: note: used here to mean ‘using meta::invoke = typename Fn::invoke<A>’ 3185 | using type = if_<invoke<Fn, A>, pair<list<Yes..., A>, list<No...>>, | ^~~~~~~~~~~~~ /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:541:11: note: declared here 541 | using invoke = typename Fn::template invoke<Args...>; | ^~~~~~ In file included from /ENDFtk/build/_deps/range-v3-src/include/range/v3/view/all.hpp:18, from /ENDFtk/src/ENDFtk/record/InterpolationBase.hpp:12, from /ENDFtk/src/ENDFtk/record.hpp:11, from /ENDFtk/src/ENDFtk/InterpolationRecord.hpp:8, from /ENDFtk/python/src/record/InterpolationRecord.python.cpp:6: /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:3190:19: error: declaration of ‘template<class Fn> template<class State, class A> using meta::detail::partition_<Fn>::invoke = meta::_t<meta::detail::partition_<Fn>::impl<State, A> >’ changes meaning of ‘invoke’ [-Wchanges-meaning] 3190 | using invoke = _t<impl<State, A>>; | ^~~~~~ /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:3185:34: note: used here to mean ‘using meta::invoke = typename Fn::invoke<A>’ 3185 | using type = if_<invoke<Fn, A>, pair<list<Yes..., A>, list<No...>>, | ^~~~~~~~~~~~~ /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:541:11: note: declared here 541 | using invoke = typename Fn::template invoke<Args...>; | ^~~~~~ In file included from /ENDFtk/build/_deps/range-v3-src/include/range/v3/view/all.hpp:18, from /ENDFtk/src/ENDFtk/record/InterpolationBase.hpp:12, from /ENDFtk/src/ENDFtk/record.hpp:11, from /ENDFtk/src/ENDFtk/DirectoryRecord.hpp:7, from /ENDFtk/python/src/record/DirectoryRecord.python.cpp:6: /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:3190:19: error: declaration of ‘template<class Fn> template<class State, class A> using meta::detail::partition_<Fn>::invoke = meta::_t<meta::detail::partition_<Fn>::impl<State, A> >’ changes meaning of ‘invoke’ [-Wchanges-meaning] 3190 | using invoke = _t<impl<State, A>>; | ^~~~~~ /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:3185:34: note: used here to mean ‘using meta::invoke = typename Fn::invoke<A>’ 3185 | using type = if_<invoke<Fn, A>, pair<list<Yes..., A>, list<No...>>, | ^~~~~~~~~~~~~ /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:541:11: note: declared here 541 | using invoke = typename Fn::template invoke<Args...>; | ^~~~~~ In file included from /ENDFtk/build/_deps/range-v3-src/include/range/v3/view/all.hpp:18, from /ENDFtk/src/ENDFtk/record/InterpolationBase.hpp:12, from /ENDFtk/src/ENDFtk/record.hpp:11, from /ENDFtk/src/ENDFtk/TapeIdentification.hpp:8, from /ENDFtk/python/src/record/TapeIdentification.python.cpp:6: /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:3190:19: error: declaration of ‘template<class Fn> template<class State, class A> using meta::detail::partition_<Fn>::invoke = meta::_t<meta::detail::partition_<Fn>::impl<State, A> >’ changes meaning of ‘invoke’ [-Wchanges-meaning] 3190 | using invoke = _t<impl<State, A>>; | ^~~~~~ /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:3185:34: note: used here to mean ‘using meta::invoke = typename Fn::invoke<A>’ 3185 | using type = if_<invoke<Fn, A>, pair<list<Yes..., A>, list<No...>>, | ^~~~~~~~~~~~~ /ENDFtk/build/_deps/range-v3-src/include/meta/meta.hpp:541:11: note: declared here 541 | using invoke = typename Fn::template invoke<Args...>; | ^~~~~~ make[2]: *** [CMakeFiles/ENDFtk.python.dir/build.make:90: CMakeFiles/ENDFtk.python.dir/python/src/record/ControlRecord.python.cpp.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: *** [CMakeFiles/ENDFtk.python.dir/build.make:104: CMakeFiles/ENDFtk.python.dir/python/src/record/ListRecord.python.cpp.o] Error 1 make[2]: *** [CMakeFiles/ENDFtk.python.dir/build.make:76: CMakeFiles/ENDFtk.python.dir/python/src/ENDFtk.python.cpp.o] Error 1 make[2]: *** [CMakeFiles/ENDFtk.python.dir/build.make:146: CMakeFiles/ENDFtk.python.dir/python/src/record/DirectoryRecord.python.cpp.o] Error 1 make[2]: *** [CMakeFiles/ENDFtk.python.dir/build.make:132: CMakeFiles/ENDFtk.python.dir/python/src/record/InterpolationRecord.python.cpp.o] Error 1 [ 14%] Linking CXX static library libCatch2.a make[2]: *** [CMakeFiles/ENDFtk.python.dir/build.make:160: CMakeFiles/ENDFtk.python.dir/python/src/record/TapeIdentification.python.cpp.o] Error 1 [ 14%] Built target Catch2 [ 14%] Building CXX object _deps/catch2-build/src/CMakeFiles/Catch2WithMain.dir/catch2/internal/catch_main.cpp.o make[2]: *** [CMakeFiles/ENDFtk.python.dir/build.make:118: CMakeFiles/ENDFtk.python.dir/python/src/record/TabulationRecord.python.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:5157: CMakeFiles/ENDFtk.python.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs.... [ 15%] Linking CXX static library libCatch2Main.a [ 15%] Built target Catch2WithMain make: *** [Makefile:146: all] Error 2
Activity
whaeck commentedon Sep 12, 2024
This is an error in range-v3 it seems, which is an external dependency for ENDFtk. Which compiler and OS are you using?
We're actually in the process of updating ENDFtk to remove all of range-v3 from ENDFtk and are almost done with that. You can find this version on the feature/replace-range-v3 branch. There are a few outstanding issues with the Python interface where the data being returned is incorrect for a select few pieces of ENDFtk:
You may want to try with the new version. This current latest release will most likely be replaced in the foreseeable future as soon as we have dealt with the above mentioned minor issues.
whaeck commentedon Oct 18, 2024
Just to note that this branch is now in the develop branch. We will release this in a month or so.
wilfriedmonangeIRSN commentedon Apr 8, 2025
Hi @whaeck got exactly the same compilation error. Using Ubuntu 24.04 with g++13.3.
No compilation issue with the
developbranch.