Jump to content
×
×
  • Create New...
  • 0

Ioio compile ses sources sous FreeBSD 64bits


Ioio

Question

Hello !

 

Voilà, j'essaye de compiler les sources du serveur 2016 de la communauté (team FE) (v3) et je rencontre comme un énorme soucis:

Boost s'impose et me tape une erreur de 20 lignes suivi de, disons..., 500 tentatives de résolution de mon soucis sous forme de note gnu make.

 

Version des files : 2016 v.3 by Team Funky-Emu

Domaine (Base de données, Core, etc.) : Sources - Compilation du GAME 40250 sous FreeBSD 10.3 STABLE en 64bits

Votre niveau (débutant, intermédiaire, avancé) : avancé comme un bœuf la tête coincé dans les fils électriques...

 

Description du problème :

Manipulation putty + erreurs


[email protected]:~/Server/game/src # gmake -s -w
gmake: Entering directory '/root/Server/game/src'
compile acce.cpp
acce.cpp: In function 'void FN_remove_material(CItem**, DWORD, int, int)':
acce.cpp:87:7: warning: unused variable 'count' [-Wunused-variable]
 int  count = 0;
      ^
acce.cpp: In member function 'void ACCE_DATA::remove_material(LPCHARACTER, int)':
acce.cpp:222:11: warning: variable 'end_index' set but not used [-Wunused-but-set-variable]
 DWORD i, end_index;
          ^
acce.cpp: In function 'bool Acce_InformationInitialize()':
acce.cpp:943:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
 for (int i = 0; i < s_acce_proto.size(); ++i)
                   ^
compile BattleArena.cpp
compile OXEvent.cpp
compile ani.cpp
compile arena.cpp
compile battle.cpp
compile building.cpp
compile castle.cpp
compile char.cpp
char.cpp:7355:4: warning: this decimal constant is unsigned only in ISO C90
   return 2500000000;
   ^
char.cpp: In member function 'int CHARACTER::GetPolymorphPoint(BYTE) const':
char.cpp:2957:57: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
     if (GetJob() == JOB_SHAMAN || GetJob() == JOB_SURA && GetSkillGroup() == 2)
                                                        ^
char.cpp: In member function 'void CHARACTER::SetTarget(LPCHARACTER)':
char.cpp:5213:29: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
  if (m_pkChrTarget->IsPC() && !m_pkChrTarget->IsPolymorphed() || m_pkChrTarget->GetMaxHP() <= 0)
                            ^
char.cpp: In member function 'bool CHARACTER::CanSummon(int)':
char.cpp:6412:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
 return (iLeaderShip >= 20 || iLeaderShip >= 12 && m_dwLastDeadTime + 180 > get_dword_time());
                                                ^
char.cpp: In member function 'DWORD CHARACTER::PetGetNextExp() const':
char.cpp:7359:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
compile char_affect.cpp
compile char_battle.cpp
char_battle.cpp: In member function 'void CHARACTER::Reward(bool)':
char_battle.cpp:779:6: warning: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses]
  if (GetLevel() - pkAttacker->GetLevel() >= -10)
     ^
compile char_change_empire.cpp
compile char_horse.cpp
compile char_item.cpp
char_item.cpp: In member function 'bool CHARACTER::UseItemEx(LPITEM, TItemPos)':
char_item.cpp:1792:115: warning: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'DWORD {aka unsigned int}' [-Wformat=]
  snprintf(szQuery1, sizeof(szQuery1), "SELECT duration FROM new_petsystem WHERE id = %lu LIMIT 1", item2->GetID());
                                                                                                                  ^
char_item.cpp:1792:115: warning: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'DWORD {aka unsigned int}' [-Wformat=]
char_item.cpp:1819:32: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
  if (item2 = GetItem(DestCell)) {
                               ^
char_item.cpp:2118:41: warning: passing NULL to non-pointer argument 1 of 'std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>::size_type, const value_type&, const allocator_type&) [with _Tp = CItem*; _Alloc = std::allocator; std::vector<_Tp, _Alloc>::size_type = unsigned int; std::vector<_Tp, _Alloc>::value_type = CItem*; std::vector<_Tp, _Alloc>::allocator_type = std::allocator]' [-Wconversion-null]
     std::vector item_gets(NULL);
                                        ^
char_item.cpp:2182:40: warning: passing NULL to non-pointer argument 1 of 'std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>::size_type, const value_type&, const allocator_type&) [with _Tp = CItem*; _Alloc = std::allocator; std::vector<_Tp, _Alloc>::size_type = unsigned int; std::vector<_Tp, _Alloc>::value_type = CItem*; std::vector<_Tp, _Alloc>::allocator_type = std::allocator]' [-Wconversion-null]
    std::vector item_gets(NULL);
                                       ^
char_item.cpp:3765:45: warning: passing NULL to non-pointer argument 1 of 'std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>::size_type, const value_type&, const allocator_type&) [with _Tp = CItem*; _Alloc = std::allocator; std::vector<_Tp, _Alloc>::size_type = unsigned int; std::vector<_Tp, _Alloc>::value_type = CItem*; std::vector<_Tp, _Alloc>::allocator_type = std::allocator]' [-Wconversion-null]
         std::vector item_gets(NULL);
                                            ^
char_item.cpp:3769:53: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
         if (item->GetVnum() == ITEM_VALENTINE_ROSE && SEX_MALE==GET_SEX(this) ||
                                                    ^
char_item.cpp:3789:45: warning: passing NULL to non-pointer argument 1 of 'std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>::size_type, const value_type&, const allocator_type&) [with _Tp = CItem*; _Alloc = std::allocator; std::vector<_Tp, _Alloc>::size_type = unsigned int; std::vector<_Tp, _Alloc>::value_type = CItem*; std::vector<_Tp, _Alloc>::allocator_type = std::allocator]' [-Wconversion-null]
         std::vector item_gets(NULL);
                                            ^
char_item.cpp:3793:53: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
         if (item->GetVnum() == ITEM_WHITEDAY_CANDY && SEX_MALE==GET_SEX(this) ||
                                                    ^
char_item.cpp:3812:45: warning: passing NULL to non-pointer argument 1 of 'std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>::size_type, const value_type&, const allocator_type&) [with _Tp = CItem*; _Alloc = std::allocator; std::vector<_Tp, _Alloc>::size_type = unsigned int; std::vector<_Tp, _Alloc>::value_type = CItem*; std::vector<_Tp, _Alloc>::allocator_type = std::allocator]' [-Wconversion-null]
         std::vector item_gets(NULL);
                                            ^
char_item.cpp:1716:6: warning: variable 'iLimitTimerBasedOnWearFlagIndex' set but not used [-Wunused-but-set-variable]
 int iLimitTimerBasedOnWearFlagIndex = -1;
     ^
char_item.cpp: In member function 'bool CHARACTER::UseItem(TItemPos, TItemPos)':
char_item.cpp:5604:22: warning: suggest parentheses around comparison in operand of '|' [-Wparentheses]
 if (item->GetVnum() == 50200 | item->GetVnum() == 71049)
                     ^
compile char_manager.cpp
compile char_quickslot.cpp
compile char_resist.cpp
compile char_skill.cpp
char_skill.cpp: In member function 'bool CHARACTER::UseSkill(DWORD, LPCHARACTER, bool)':
char_skill.cpp:2985:50: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
  if (IsAffectFlag(AFF_TANHWAN_DASH) || pkVictim && pkVictim != this)
                                                 ^
char_skill.cpp:3091:96: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
 if (pkSk->dwVnum == SKILL_MUYEONG || pkSk->IsChargeSkill() && !IsAffectFlag(AFF_TANHWAN_DASH) && !pkVictim)
                                                                                               ^
In file included from /usr/local/include/boost/functional/hash/hash.hpp:540:0,
                from /usr/local/include/boost/functional/hash.hpp:6,
                from /usr/local/include/boost/unordered/unordered_map.hpp:20,
                from /usr/local/include/boost/unordered_map.hpp:16,
                from char.h:4,
                from char_skill.cpp:7:
/usr/local/include/boost/functional/hash/extensions.hpp: In instantiation of 'std::size_t boost::hash::operator()(const T&) const [with T = VID; std::size_t = unsigned int]':
/usr/local/include/boost/unordered/detail/buckets.hpp:599:24:   required from 'static SizeT boost::unordered::detail::prime_policy::apply_hash(const Hash&, const T&) [with Hash = boost::hash; T = VID; SizeT = unsigned int]'
/usr/local/include/boost/unordered/detail/table.hpp:758:63:   required from 'std::size_t boost::unordered::detail::table::hash(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; std::size_t = unsigned int; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/detail/table.hpp:784:38:   required from 'boost::unordered::detail::table::iterator boost::unordered::detail::table::find_node(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; boost::unordered::detail::table::iterator = boost::unordered::iterator_detail::iterator > >; typename Types::node = boost::unordered::detail::ptr_node >; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/unordered_map.hpp:1212:34:   required from 'boost::unordered::unordered_map::iterator boost::unordered::unordered_map::find(const key_type&) [with K = VID; T = unsigned int; H = boost::hash; P = std::equal_to; A = std::allocator >; boost::unordered::unordered_map::iterator = boost::unordered::iterator_detail::iterator > >; boost::unordered::unordered_map::key_type = VID]'
char_skill.cpp:4101:103:   required from here
/usr/local/include/boost/functional/hash/extensions.hpp:269:34: error: no matching function for call to 'hash_value(const VID&)'
            return hash_value(val);
                                 ^
/usr/local/include/boost/functional/hash/extensions.hpp:269:34: note: candidates are:
In file included from /usr/local/include/boost/intrusive_ptr.hpp:16:0,
                from event.h:10,
                from stdafx.h:39,
                from char_skill.cpp:1:
/usr/local/include/boost/smart_ptr/intrusive_ptr.hpp:317:33: note: template std::size_t boost::hash_value(const boost::intrusive_ptr&)
template< class T > std::size_t hash_value( boost::intrusive_ptr const & p )
                                ^
/usr/local/include/boost/smart_ptr/intrusive_ptr.hpp:317:33: note:   template argument deduction/substitution failed:
In file included from /usr/local/include/boost/functional/hash/hash.hpp:540:0,
                from /usr/local/include/boost/functional/hash.hpp:6,
                from /usr/local/include/boost/unordered/unordered_map.hpp:20,
                from /usr/local/include/boost/unordered_map.hpp:16,
                from char.h:4,
                from char_skill.cpp:7:
/usr/local/include/boost/functional/hash/extensions.hpp:269:34: note:   'const VID' is not derived from 'const boost::intrusive_ptr'
            return hash_value(val);
                                 ^
In file included from /usr/local/include/boost/functional/hash.hpp:6:0,
                from /usr/local/include/boost/unordered/unordered_map.hpp:20,
                from /usr/local/include/boost/unordered_map.hpp:16,
                from char.h:4,
                from char_skill.cpp:7:
/usr/local/include/boost/functional/hash/hash.hpp:194:57: note: template typename boost::hash_detail::basic_numbers::type boost::hash_value(T)
    typename boost::hash_detail::basic_numbers::type hash_value(T v)
                                                        ^
/usr/local/include/boost/functional/hash/hash.hpp:194:57: note:   template argument deduction/substitution failed:
/usr/local/include/boost/functional/hash/hash.hpp: In substitution of 'template typename boost::hash_detail::basic_numbers::type boost::hash_value(T) [with T = VID]':
/usr/local/include/boost/functional/hash/extensions.hpp:269:34:   required from 'std::size_t boost::hash::operator()(const T&) const [with T = VID; std::size_t = unsigned int]'
/usr/local/include/boost/unordered/detail/buckets.hpp:599:24:   required from 'static SizeT boost::unordered::detail::prime_policy::apply_hash(const Hash&, const T&) [with Hash = boost::hash; T = VID; SizeT = unsigned int]'
/usr/local/include/boost/unordered/detail/table.hpp:758:63:   required from 'std::size_t boost::unordered::detail::table::hash(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; std::size_t = unsigned int; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/detail/table.hpp:784:38:   required from 'boost::unordered::detail::table::iterator boost::unordered::detail::table::find_node(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; boost::unordered::detail::table::iterator = boost::unordered::iterator_detail::iterator > >; typename Types::node = boost::unordered::detail::ptr_node >; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/unordered_map.hpp:1212:34:   required from 'boost::unordered::unordered_map::iterator boost::unordered::unordered_map::find(const key_type&) [with K = VID; T = unsigned int; H = boost::hash; P = std::equal_to; A = std::allocator >; boost::unordered::unordered_map::iterator = boost::unordered::iterator_detail::iterator > >; boost::unordered::unordered_map::key_type = VID]'
char_skill.cpp:4101:103:   required from here
/usr/local/include/boost/functional/hash/hash.hpp:194:57: error: no type named 'type' in 'struct boost::hash_detail::basic_numbers'
/usr/local/include/boost/functional/hash/extensions.hpp: In instantiation of 'std::size_t boost::hash::operator()(const T&) const [with T = VID; std::size_t = unsigned int]':
/usr/local/include/boost/unordered/detail/buckets.hpp:599:24:   required from 'static SizeT boost::unordered::detail::prime_policy::apply_hash(const Hash&, const T&) [with Hash = boost::hash; T = VID; SizeT = unsigned int]'
/usr/local/include/boost/unordered/detail/table.hpp:758:63:   required from 'std::size_t boost::unordered::detail::table::hash(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; std::size_t = unsigned int; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/detail/table.hpp:784:38:   required from 'boost::unordered::detail::table::iterator boost::unordered::detail::table::find_node(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; boost::unordered::detail::table::iterator = boost::unordered::iterator_detail::iterator > >; typename Types::node = boost::unordered::detail::ptr_node >; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/unordered_map.hpp:1212:34:   required from 'boost::unordered::unordered_map::iterator boost::unordered::unordered_map::find(const key_type&) [with K = VID; T = unsigned int; H = boost::hash; P = std::equal_to; A = std::allocator >; boost::unordered::unordered_map::iterator = boost::unordered::iterator_detail::iterator > >; boost::unordered::unordered_map::key_type = VID]'
char_skill.cpp:4101:103:   required from here
/usr/local/include/boost/functional/hash/hash.hpp:200:56: note: template typename boost::hash_detail::long_numbers::type boost::hash_value(T)
    typename boost::hash_detail::long_numbers::type hash_value(T v)
                                                       ^
/usr/local/include/boost/functional/hash/hash.hpp:200:56: note:   template argument deduction/substitution failed:
/usr/local/include/boost/functional/hash/hash.hpp: In substitution of 'template typename boost::hash_detail::long_numbers::type boost::hash_value(T) [with T = VID]':
/usr/local/include/boost/functional/hash/extensions.hpp:269:34:   required from 'std::size_t boost::hash::operator()(const T&) const [with T = VID; std::size_t = unsigned int]'
/usr/local/include/boost/unordered/detail/buckets.hpp:599:24:   required from 'static SizeT boost::unordered::detail::prime_policy::apply_hash(const Hash&, const T&) [with Hash = boost::hash; T = VID; SizeT = unsigned int]'
/usr/local/include/boost/unordered/detail/table.hpp:758:63:   required from 'std::size_t boost::unordered::detail::table::hash(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; std::size_t = unsigned int; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/detail/table.hpp:784:38:   required from 'boost::unordered::detail::table::iterator boost::unordered::detail::table::find_node(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; boost::unordered::detail::table::iterator = boost::unordered::iterator_detail::iterator > >; typename Types::node = boost::unordered::detail::ptr_node >; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/unordered_map.hpp:1212:34:   required from 'boost::unordered::unordered_map::iterator boost::unordered::unordered_map::find(const key_type&) [with K = VID; T = unsigned int; H = boost::hash; P = std::equal_to; A = std::allocator >; boost::unordered::unordered_map::iterator = boost::unordered::iterator_detail::iterator > >; boost::unordered::unordered_map::key_type = VID]'
char_skill.cpp:4101:103:   required from here
/usr/local/include/boost/functional/hash/hash.hpp:200:56: error: no type named 'type' in 'struct boost::hash_detail::long_numbers'
/usr/local/include/boost/functional/hash/extensions.hpp: In instantiation of 'std::size_t boost::hash::operator()(const T&) const [with T = VID; std::size_t = unsigned int]':
/usr/local/include/boost/unordered/detail/buckets.hpp:599:24:   required from 'static SizeT boost::unordered::detail::prime_policy::apply_hash(const Hash&, const T&) [with Hash = boost::hash; T = VID; SizeT = unsigned int]'
/usr/local/include/boost/unordered/detail/table.hpp:758:63:   required from 'std::size_t boost::unordered::detail::table::hash(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; std::size_t = unsigned int; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/detail/table.hpp:784:38:   required from 'boost::unordered::detail::table::iterator boost::unordered::detail::table::find_node(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; boost::unordered::detail::table::iterator = boost::unordered::iterator_detail::iterator > >; typename Types::node = boost::unordered::detail::ptr_node >; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/unordered_map.hpp:1212:34:   required from 'boost::unordered::unordered_map::iterator boost::unordered::unordered_map::find(const key_type&) [with K = VID; T = unsigned int; H = boost::hash; P = std::equal_to; A = std::allocator >; boost::unordered::unordered_map::iterator = boost::unordered::iterator_detail::iterator > >; boost::unordered::unordered_map::key_type = VID]'
char_skill.cpp:4101:103:   required from here
/usr/local/include/boost/functional/hash/hash.hpp:206:57: note: template typename boost::hash_detail::ulong_numbers::type boost::hash_value(T)
    typename boost::hash_detail::ulong_numbers::type hash_value(T v)
                                                        ^
/usr/local/include/boost/functional/hash/hash.hpp:206:57: note:   template argument deduction/substitution failed:
/usr/local/include/boost/functional/hash/hash.hpp: In substitution of 'template typename boost::hash_detail::ulong_numbers::type boost::hash_value(T) [with T = VID]':
/usr/local/include/boost/functional/hash/extensions.hpp:269:34:   required from 'std::size_t boost::hash::operator()(const T&) const [with T = VID; std::size_t = unsigned int]'
/usr/local/include/boost/unordered/detail/buckets.hpp:599:24:   required from 'static SizeT boost::unordered::detail::prime_policy::apply_hash(const Hash&, const T&) [with Hash = boost::hash; T = VID; SizeT = unsigned int]'
/usr/local/include/boost/unordered/detail/table.hpp:758:63:   required from 'std::size_t boost::unordered::detail::table::hash(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; std::size_t = unsigned int; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/detail/table.hpp:784:38:   required from 'boost::unordered::detail::table::iterator boost::unordered::detail::table::find_node(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; boost::unordered::detail::table::iterator = boost::unordered::iterator_detail::iterator > >; typename Types::node = boost::unordered::detail::ptr_node >; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/unordered_map.hpp:1212:34:   required from 'boost::unordered::unordered_map::iterator boost::unordered::unordered_map::find(const key_type&) [with K = VID; T = unsigned int; H = boost::hash; P = std::equal_to; A = std::allocator >; boost::unordered::unordered_map::iterator = boost::unordered::iterator_detail::iterator > >; boost::unordered::unordered_map::key_type = VID]'
char_skill.cpp:4101:103:   required from here
/usr/local/include/boost/functional/hash/hash.hpp:206:57: error: no type named 'type' in 'struct boost::hash_detail::ulong_numbers'
/usr/local/include/boost/functional/hash/extensions.hpp: In instantiation of 'std::size_t boost::hash::operator()(const T&) const [with T = VID; std::size_t = unsigned int]':
/usr/local/include/boost/unordered/detail/buckets.hpp:599:24:   required from 'static SizeT boost::unordered::detail::prime_policy::apply_hash(const Hash&, const T&) [with Hash = boost::hash; T = VID; SizeT = unsigned int]'
/usr/local/include/boost/unordered/detail/table.hpp:758:63:   required from 'std::size_t boost::unordered::detail::table::hash(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; std::size_t = unsigned int; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/detail/table.hpp:784:38:   required from 'boost::unordered::detail::table::iterator boost::unordered::detail::table::find_node(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; boost::unordered::detail::table::iterator = boost::unordered::iterator_detail::iterator > >; typename Types::node = boost::unordered::detail::ptr_node >; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/unordered_map.hpp:1212:34:   required from 'boost::unordered::unordered_map::iterator boost::unordered::unordered_map::find(const key_type&) [with K = VID; T = unsigned int; H = boost::hash; P = std::equal_to; A = std::allocator >; boost::unordered::unordered_map::iterator = boost::unordered::iterator_detail::iterator > >; boost::unordered::unordered_map::key_type = VID]'
char_skill.cpp:4101:103:   required from here
/usr/local/include/boost/functional/hash/hash.hpp:213:9: note: template typename boost::enable_if, unsigned int>::type boost::hash_value(T)
        hash_value(T v)
        ^
/usr/local/include/boost/functional/hash/hash.hpp:213:9: note:   template argument deduction/substitution failed:
/usr/local/include/boost/functional/hash/hash.hpp: In substitution of 'template typename boost::enable_if, unsigned int>::type boost::hash_value(T) [with T = VID]':
/usr/local/include/boost/functional/hash/extensions.hpp:269:34:   required from 'std::size_t boost::hash::operator()(const T&) const [with T = VID; std::size_t = unsigned int]'
/usr/local/include/boost/unordered/detail/buckets.hpp:599:24:   required from 'static SizeT boost::unordered::detail::prime_policy::apply_hash(const Hash&, const T&) [with Hash = boost::hash; T = VID; SizeT = unsigned int]'
/usr/local/include/boost/unordered/detail/table.hpp:758:63:   required from 'std::size_t boost::unordered::detail::table::hash(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; std::size_t = unsigned int; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/detail/table.hpp:784:38:   required from 'boost::unordered::detail::table::iterator boost::unordered::detail::table::find_node(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; boost::unordered::detail::table::iterator = boost::unordered::iterator_detail::iterator > >; typename Types::node = boost::unordered::detail::ptr_node >; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/unordered_map.hpp:1212:34:   required from 'boost::unordered::unordered_map::iterator boost::unordered::unordered_map::find(const key_type&) [with K = VID; T = unsigned int; H = boost::hash; P = std::equal_to; A = std::allocator >; boost::unordered::unordered_map::iterator = boost::unordered::iterator_detail::iterator > >; boost::unordered::unordered_map::key_type = VID]'
char_skill.cpp:4101:103:   required from here
/usr/local/include/boost/functional/hash/hash.hpp:213:9: error: no type named 'type' in 'struct boost::enable_if, unsigned int>'
/usr/local/include/boost/functional/hash/extensions.hpp: In instantiation of 'std::size_t boost::hash::operator()(const T&) const [with T = VID; std::size_t = unsigned int]':
/usr/local/include/boost/unordered/detail/buckets.hpp:599:24:   required from 'static SizeT boost::unordered::detail::prime_policy::apply_hash(const Hash&, const T&) [with Hash = boost::hash; T = VID; SizeT = unsigned int]'
/usr/local/include/boost/unordered/detail/table.hpp:758:63:   required from 'std::size_t boost::unordered::detail::table::hash(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to >; std::size_t = unsigned int; boost::unordered::detail::table::key_type = VID]'
/usr/local/include/boost/unordered/detail/table.hpp:784:38:   required from 'boost::unordered::detail::table::iterator boost::unordered::detail::table::find_node(const key_type&) const [with Types = boost::unordered::detail::map >, VID, unsigned int, boost::hash, std::equal_to
Link to comment
  • Answers 6
  • Created
  • Last Reply

Top Posters For This Question

Popular Days

Top Posters For This Question

6 answers to this question

Recommended Posts

  • 0
  • Funkiest

Yo,

 

J'avais eu ce soucis en tentant de mettre à jour Boost y'a... 1ans et demi j'crois

 

Ce soucis, soit tu le contournes en prenant l'ancienne partie de extensions.hpp (diffchecker) genre d'une version précédente, soit en ajoutant un truc au code, mais franchement avec le temps j'ai oublié quoi :/

Link to comment
  • 0
  • Funkiest

Désolé du double post, mais j'ai peut-être une solution !

 

Essaie ça :

 

Dans char.h cherche :

 

boost::unordered_map TargetVIDMap; 

 

Remplace par :

 

boost::unordered_map TargetVIDMap; 

 

Puis dans char_skill.cpp, remplace:

 

boost::unordered_map::iterator iterTargetMap = rSkillUseInfo.TargetVIDMap.find(TargetVID); 

 

par :

 

auto iterTargetMap = rSkillUseInfo.TargetVIDMap.find(TargetVID); 

 

Cependant, si t'es pas en c++11 minimum, tu pourras pas utiliser "auto"...

 

Du coup si ça marche pas, essaie ça :

 

Dans char_skill.cpp, remplace:

 

boost::unordered_map::iterator iterTargetMap = rSkillUseInfo.TargetVIDMap.find(TargetVID);

 

par :

 

boost::unordered_map::iterator iterTargetMap = rSkillUseInfo.TargetVIDMap.find((DWORD)TargetVID);

 

Puis :

 

rSkillUseInfo.TargetVIDMap.insert( std::make_pair(TargetVID, 1) );

 

par :

 

rSkillUseInfo.TargetVIDMap.insert( std::make_pair((DWORD)TargetVID, 1) );

 

Après, c'est dans char.h :

 

Remplace :

 

boost::unordered_map TargetVIDMap; 

 

Par :

 

boost::unordered_map TargetVIDMap; 

 

Keep Calm and Sugi Pula mon ami :D

  • J'adore 1
Link to comment


Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.