AI-Toolbox
AI-Toolbox copied to clipboard
Error at compilation: ‘begin’ was not declared in this scope for the Bandit Policies
trafficstars
Hello,
I am having a compilation error at the make step during the installation. These are my settings:
g++ --version
g++ (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0
The error is occuring at line 22 in the file "AI-Toolbox/src/Factored/Bandit/Policies/MARMaxPolicy.cpp". Would you have any recommendation with respect to how I should modify the code ? I fear my compiler is too old. The full error message is:
/home/master/Desktop/AI-Toolbox/src/Factored/Bandit/Policies/MARMaxPolicy.cpp: In constructor ‘AIToolbox::Factored::Bandit::MARMaxPolicy::MARMaxPolicy(const AIToolbox::Factored::Bandit::Experience&, AIToolbox::Vector, double, double, bool)’:
/home/master/Desktop/AI-Toolbox/src/Factored/Bandit/Policies/MARMaxPolicy.cpp:22:27: error: ‘begin’ was not declared in this scope
22 | for (auto r : ranges_) {
| ^~~~~~~
/home/master/Desktop/AI-Toolbox/src/Factored/Bandit/Policies/MARMaxPolicy.cpp:22:27: note: suggested alternatives:
In file included from /usr/include/c++/10/vector:69,
from /home/master/Desktop/AI-Toolbox/include/AIToolbox/Types.hpp:4,
from /home/master/Desktop/AI-Toolbox/include/AIToolbox/Factored/Types.hpp:4,
from /home/master/Desktop/AI-Toolbox/include/AIToolbox/Factored/Bandit/Policies/MARMaxPolicy.hpp:4,
from /home/master/Desktop/AI-Toolbox/src/Factored/Bandit/Policies/MARMaxPolicy.cpp:1:
/usr/include/c++/10/bits/range_access.h:108:37: note: ‘std::begin’
108 | template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
| ^~~~~
In file included from /usr/include/c++/10/bits/stl_iterator_base_types.h:71,
from /usr/include/c++/10/bits/stl_algobase.h:65,
from /usr/include/c++/10/vector:60,
from /home/master/Desktop/AI-Toolbox/include/AIToolbox/Types.hpp:4,
from /home/master/Desktop/AI-Toolbox/include/AIToolbox/Factored/Types.hpp:4,
from /home/master/Desktop/AI-Toolbox/include/AIToolbox/Factored/Bandit/Policies/MARMaxPolicy.hpp:4,
from /home/master/Desktop/AI-Toolbox/src/Factored/Bandit/Policies/MARMaxPolicy.cpp:1:
/usr/include/c++/10/bits/iterator_concepts.h:921:10: note: ‘std::__detail::begin’
921 | void begin(const auto&) = delete;
| ^~~~~
In file included from /usr/include/c++/10/vector:69,
from /home/master/Desktop/AI-Toolbox/include/AIToolbox/Types.hpp:4,
from /home/master/Desktop/AI-Toolbox/include/AIToolbox/Factored/Types.hpp:4,
from /home/master/Desktop/AI-Toolbox/include/AIToolbox/Factored/Bandit/Policies/MARMaxPolicy.hpp:4,
from /home/master/Desktop/AI-Toolbox/src/Factored/Bandit/Policies/MARMaxPolicy.cpp:1:
/usr/include/c++/10/bits/range_access.h:855:44: note: ‘std::ranges::__cust::begin’
855 | inline constexpr __cust_access::_Begin begin{};
| ^~~~~
/home/master/Desktop/AI-Toolbox/src/Factored/Bandit/Policies/MARMaxPolicy.cpp:22:27: error: ‘end’ was not declared in this scope
22 | for (auto r : ranges_) {
| ^~~~~~~
/home/master/Desktop/AI-Toolbox/src/Factored/Bandit/Policies/MARMaxPolicy.cpp:22:27: note: suggested alternatives:
In file included from /usr/include/c++/10/vector:69,
from /home/master/Desktop/AI-Toolbox/include/AIToolbox/Types.hpp:4,
from /home/master/Desktop/AI-Toolbox/include/AIToolbox/Factored/Types.hpp:4,
from /home/master/Desktop/AI-Toolbox/include/AIToolbox/Factored/Bandit/Policies/MARMaxPolicy.hpp:4,
from /home/master/Desktop/AI-Toolbox/src/Factored/Bandit/Policies/MARMaxPolicy.cpp:1:
/usr/include/c++/10/bits/range_access.h:110:37: note: ‘std::end’
110 | template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
| ^~~
/usr/include/c++/10/bits/range_access.h:856:42: note: ‘std::ranges::__cust::end’
856 | inline constexpr __cust_access::_End end{};
| ^~~
/usr/include/c++/10/bits/range_access.h:434:10: note: ‘std::ranges::__cust_access::end’
434 | void end(const auto&) = delete;
| ^~~
make[2]: *** [src/CMakeFiles/AIToolboxFMDP.dir/build.make:370: src/CMakeFiles/AIToolboxFMDP.dir/Factored/Bandit/Policies/MARMaxPolicy.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1114: src/CMakeFiles/AIToolboxFMDP.dir/all] Error 2
make: *** [Makefile:101: all] Error 2
Any recommendation would be much appreciated. Best regards, Joachim