Hello, I am trying to build VCMI project for few days now and have some issues.
I followed VCMI how to build wiki.
I am using VS2013 update 5 with boost 1_55_0. I’ve also tried boost_1_58, boost_1_60 and VS2015 but there are even more errors.
The Output from build VCMI_lib project:
1>------ Build started: Project: VCMI_lib, Configuration: RD Win32 ------
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppBuild.targets(364,5): warning MSB8004: Output Directory does not end with a trailing slash. This build instance will add the slash as it is required to allow proper evaluation of the Output Directory.
1> BattleAction.cpp
1> CRandomGenerator.cpp
1> CFileInputStream.cpp
1> CRewardableConstructor.cpp
1> HeroBonus.cpp
1>C:\local\boost_1_55_0\boost/range/iterator.hpp(63): error C2039: 'type' : is not a member of 'boost::mpl::eval_if_c<true,boost::range_const_iterator<std::_Vector_iterator<std::_Vector_val<std::_Simple_types<Bonus *>>>>,boost::range_mutable_iterator<C>>'
1> with
1>
1> C=const std::_Vector_iterator<std::_Vector_val<std::_Simple_types<Bonus *>>>
1> ]
1> HeroBonus.cpp(255) : see reference to class template instantiation 'boost::range_iterator<const std::_Vector_iterator<std::_Vector_val<std::_Simple_types<Bonus *>>>>' being compiled
1>C:\local\boost_1_55_0\boost/range/iterator.hpp(63): error C2039: 'type' : is not a member of 'boost::mpl::eval_if_c<false,boost::range_const_iterator<std::_Vector_iterator<std::_Vector_val<std::_Simple_types<Bonus *>>>>,boost::range_mutable_iterator<C>>'
1> with
1>
1> C=std::_Vector_iterator<std::_Vector_val<std::_Simple_types<Bonus *>>>
1> ]
1> C:\local\boost_1_55_0\boost/range/detail/range_return.hpp(87) : see reference to class template instantiation 'boost::range_iterator<SinglePassRange>' being compiled
1> with
1>
1> SinglePassRange=std::_Vector_iterator<std::_Vector_val<std::_Simple_types<Bonus *>>>
1> ]
1> HeroBonus.cpp(255) : see reference to class template instantiation 'boost::range_return<std::_Vector_iterator<std::_Vector_val<std::_Simple_types<Bonus *>>>,return_begin_found>' being compiled
1>C:\local\boost_1_55_0\boost/range/detail/range_return.hpp(87): error C3203: 'type' : unspecialized class template can't be used as a template argument for template parameter 'IteratorT', expected a real type
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
and error lits:
Error 2 error C2039: 'type' : is not a member of 'boost::mpl::eval_if_c<true,boost::range_const_iterator<std::_Vector_iterator<std::_Vector_val<std::_Simple_types<Bonus *>>>>,boost::range_mutable_iterator<C>>' C:\local\boost_1_55_0\boost\range\iterator.hpp 63 1 VCMI_lib
Error 3 error C2039: 'type' : is not a member of 'boost::mpl::eval_if_c<false,boost::range_const_iterator<std::_Vector_iterator<std::_Vector_val<std::_Simple_types<Bonus *>>>>,boost::range_mutable_iterator<C>>' C:\local\boost_1_55_0\boost\range\iterator.hpp 63 1 VCMI_lib
Error 4 error C3203: 'type' : unspecialized class template can't be used as a template argument for template parameter 'IteratorT', expected a real type C:\local\boost_1_55_0\boost\range\detail\range_return.hpp 87 1 VCMI_lib
Any help would be appreciated