Skip to content
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

Error when compiling ENDFtk (14%) #214

Open
chadforrest opened this issue Sep 11, 2024 · 2 comments
Open

Error when compiling ENDFtk (14%) #214

chadforrest opened this issue Sep 11, 2024 · 2 comments

Comments

@chadforrest
Copy link

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

@whaeck
Copy link
Member

whaeck commented 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:

  • the angularDistributions function in MF4 is commented out for now
  • Python issues for E in MF1 MT458 PolynomialComponents
  • Python issues for MU and F in MF6 LAW1 TabulatedDistribution
  • Python issues for total, elastic, fission, capture, current_weighted_total in MF2 MT152
  • Python issues for MSIGMA in MF7 MT4 ScatteringLawConstants

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
Copy link
Member

whaeck commented Oct 18, 2024

Just to note that this branch is now in the develop branch. We will release this in a month or so.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants