1) tdm-gcc-webdl installs GCC 4.7.0
With the 4.7 you have to update the boost libraries in mingwlibs in order to solve the BOOST_DISABLE_THREADS error.
Here you can find the fix. You need to update boost/config/stdlib/libstdcpp3.hpp
Code: Select all
#if defined(_GLIBCXX_HAVE_GTHR_DEFAULT) \
|| defined(_GLIBCXX_HAS_GTHREADS) \
|| defined(_GLIBCXX__PTHREADS) \
|| defined(WIN32)
I tried GCC 4.7.0 but also 4.6.2. Errors are the same.
I have this error and I may need help:
Code: Select all
[ 31%] Building CXX object tools/unitsync/CMakeFiles/unitsync.dir/__/__/rts/System/FileSystem/FileFilter.cpp.obj
In file included from c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/typeindex:35:0,
from O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash/hash.hpp:28,
from O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash.hpp:6,
from O:/Data/GitHub/spring/mingwlibs/include/boost/regex/v4/basic_regex.hpp:23,
from O:/Data/GitHub/spring/mingwlibs/include/boost/regex/v4/regex.hpp:67,
from O:/Data/GitHub/spring/mingwlibs/include/boost/regex.hpp:31,
from O:\Data\GitHub\spring\rts\System\FileSystem\FileFilter.cpp:7:
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the upcoming ISO C++ standard, C++0x. This support is currently experimental, and must be enabl ed with the -std=c++0x or -std=gnu++0x compiler options.
In file included from O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash.hpp:6:0,
from O:/Data/GitHub/spring/mingwlibs/include/boost/regex/v4/basic_regex.hpp:23,
from O:/Data/GitHub/spring/mingwlibs/include/boost/regex/v4/regex.hpp:67,
from O:/Data/GitHub/spring/mingwlibs/include/boost/regex.hpp:31,
from O:\Data\GitHub\spring\rts\System\FileSystem\FileFilter.cpp:7:
O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash/hash.hpp:95:43: error: 'std::size_t boost::hash_value' redeclared as different kind of symbol
O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash/hash.hpp:91:17: error: previous declaration of 'template<class Ch, class A> std::size_t boost::hash_value(const std::basic_string<Ch, std::char_traits<_CharT>, A>&)'
O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash/hash.hpp:95:28: error: 'type_index' is not a member of 'std'
O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash/hash.hpp:343:40: error: 'boost::hash_value' declared as an 'inline' variable
O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash/hash.hpp:343:40: error: 'std::size_t boost::hash_value' redeclared as different kind of symbol
O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash/hash.hpp:321:24: error: previous declaration of 'template<class Ch, class A> std::size_t boost::hash_value(const std::basic_string<Ch, std::char_traits<_CharT>, A>&)'
O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash/hash.hpp:343:35: error: 'type_index' is not a member of 'std'
O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash/hash.hpp:454:5: error: 'type_index' is not a member of 'std'
O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash/hash.hpp:454:5: error: 'type_index' is not a member of 'std'
O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash/hash.hpp:454:5: error: template argument 1 is invalid
O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash/hash.hpp:454:5: error: 'type_index' is not a member of 'std'
O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash/hash.hpp:454:5: error: 'type_index' is not a member of 'std'
O:/Data/GitHub/spring/mingwlibs/include/boost/functional/hash/hash.hpp:454:5: error: template argument 1 is invalid
mingw32-make[3]: *** [tools/unitsync/CMakeFiles/unitsync.dir/__/__/rts/System/FileSystem/FileFilter.cpp.obj] Error 1
mingw32-make[2]: *** [tools/unitsync/CMakeFiles/unitsync.dir/all] Error 2
mingw32-make[1]: *** [rts/builds/default/CMakeFiles/install-spring.dir/rule] Error 2
mingw32-make: *** [install-spring] Error 2
Code: Select all
[ 8%] Building CXX object rts/lib/lua/CMakeFiles/lua.dir/src/lapi.cpp.obj
In file included from c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/random:51:0,
from c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/stl_algo.h:67,
from c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/algorithm:63,
from O:/Data/GitHub/spring/mingwlibs/include/boost/thread/win32/thread_primitives.hpp:18,
from O:/Data/GitHub/spring/mingwlibs/include/boost/thread/win32/basic_recursive_mutex.hpp:12,
from O:/Data/GitHub/spring/mingwlibs/include/boost/thread/win32/recursive_mutex.hpp:14,
from O:/Data/GitHub/spring/mingwlibs/include/boost/thread/recursive_mutex.hpp:14,
from O:\Data\GitHub\spring\rts\lib\lua\src\/lstate.h:15,
from O:\Data\GitHub\spring\rts\lib\lua\src\/ldebug.h:11,
from O:\Data\GitHub\spring\rts\lib\lua\src\lapi.cpp:20:
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/random.tcc: In member function 'void std::poisson_distribution<_IntType>::param_type::_M_initialize()':
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/random.tcc:1172:55: error: no matching function for call to 'max(float, const double&)'
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/random.tcc:1172:55: note: candidates are:
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/stl_algobase.h:210:5: note: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/stl_algobase.h:254:5: note: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/algorithmfwd.h:400:5: note: template<class _Tp> _Tp std::max(std::initializer_list<_Tp>)
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/algorithmfwd.h:404:5: note: template<class _Tp, class _Compare> _Tp std::max(std::initializer_list<_Tp>, _Compare)
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/random.tcc: In member function 'void std::binomial_distribution<_IntType>::param_type::_M_initialize()':
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/random.tcc:1365:42: error: no matching function for call to 'max(float, const double&)'
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/random.tcc:1365:42: note: candidates are:
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/stl_algobase.h:210:5: note: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/stl_algobase.h:254:5: note: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/algorithmfwd.h:400:5: note: template<class _Tp> _Tp std::max(st
d::initializer_list<_Tp>)
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/algorithmfwd.h:404:5: note: template<class _Tp, class _Compare> _Tp std::max(std::initializer_list<_Tp>, _Compare)
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/random.tcc:1369:42: error: no matching function for call to 'max(float, const double&)'
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/random.tcc:1369:42: note: candidates are:
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/stl_algobase.h:210:5: note: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/stl_algobase.h:254:5: note: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/algorithmfwd.h:400:5: note: template<class _Tp> _Tp std::max(st
d::initializer_list<_Tp>)
c:\mingw32\bin\../lib/gcc/mingw32/4.6.2/include/c++/bits/algorithmfwd.h:404:5: note: template<class _Tp, class _Compare> _Tp std::max(std::initializer_list<_Tp>, _Compare)
mingw32-make[3]: *** [rts/lib/lua/CMakeFiles/lua.dir/src/lapi.cpp.obj] Error 1
mingw32-make[2]: *** [rts/lib/lua/CMakeFiles/lua.dir/all] Error 2
mingw32-make[1]: *** [rts/builds/default/CMakeFiles/install-spring.dir/rule] Error 2
mingw32-make: *** [install-spring] Error 2