Mała pomoc dla mnie, kompilacja

Czy jest jakaś szansa, że w najbliższym czasie zbierzecie wszystkie pliki na SVNie lub w innej lokalizacji (dropbox?), za przeproszeniem, do kupy?;D BTW sam projekt pięknie się rozwija.
I drobna uwaga, przy rejestracji, gdy nie poda się w haśle cyfry, pojawia się informacja że hasło musi mieć , o ile dobrze pamiętam, “nuber”.

Zdecydowaliśmy jednak utrzymywać pliki projektu na SVNie (Tow napisał nawet na angielskim forum komunikat jakiś czas temu: [forum.vcmi.eu/t/vs-2008-project-files-to-be-removed-from-svn/361/1) ). Z tą różnicą, że na SVNie będą pliki dla Visuala 2010. Przy okazji zostanie zaktualizowana instrukcja na wiki. mam nadzieję, że to nastąpi niedługo.

Wybacz, niejasno się sformułowałem. Chodzi mi o to że na SVNie obecnie znajdują się pliki projektu ‘StupidAI’, a nawet tego nie można skompilować bo brakuje ‘VCMI_lib.lib’, który to plik zapewne jest powiązany z projektem ‘VCMI_lib’. Myślę, że niezłym pomysłem byłoby trzymanie wszystkich plików VCMI w innej lokalizacji, bo jak sam kilka postów wyżej napisałeś, wszystkie pliki na SVNie są raczej rzadko.

VCMI_lib.lib jest tworzony podczas budowania. Aby program go znalazł, musisz ustawić odpowiednie ścieżki w projekcie StupidAI (zapewne takie same, jak w kliencie i serwerze).

No tak, ale mam tylko ‘StupidAI’, nie mam ‘VCMI_lib’, a jak nazwa mi podpowiada ten projekt buduje tę bibliotekę. Ścieżki domyślnie są już poustawiane.

Jak to masz tylko StupidAI? Solucja powinna ci się składać z co najmniej pięciu projektów:

  • klient
  • lib
  • serwer
  • geniusAI
  • stupidAI
    przy czym w project dependencies musisz ustawić, że wszystkie pozostałe zależą od liba (jak masz solucję z SVNa lub tego forum, to powinno być wszystko dobrze poustawiane - więc podejrzewam, że sam zacząłeś coś grzebać przy solucji.

Kompilacja IMHO zakończyła się powodzeniem, problem raczej z linkowaniem…

Sprawa nieco się rozjaśniła. Używam VS 2010 i tam plik z projektem ma postać *.vcxproj , a we wcześniejszych rozszerzenie jest bez ‘x’, dlatego w solucji nie miałem 4 projektów. Po skonwertowaniu każdego z osobna już mam.
Nie oznacza to końca problemów. Przy próbie skomplikowania VCMI_lib nie można otworzyć kilku plików (które mają się znajdować w hch, u mnie ten folder jest pusty, a brakujące pliki są w innych lokalizacjach). Dodaję więc te pliki i kompiluję. Nieudanie. Komunikat błędu: “1>e:\programy\visual studio ultimate\vc\include\memory(438): fatal error C1128: number of sections exceeded object file format limit : compile with /bigobj”. Dodałem więc /bigobj. Kompiluję. Błąd. fatal error LNK1104: cannot open file 'libboost_regex-vc100-mt-gd-1_44.lib." Linkuję plik i kompiluję. Błąd.

1>------ Build started: Project: VCMI_lib, Configuration: Debug Win32 ------
1>Build started 2011-03-09 22:10:11.
1>InitializeBuildStatus:
1>  Creating "Debug_VC9\VCMI_lib.unsuccessfulbuild" because "AlwaysCreate" was specified.
1>ClCompile:
1>  CConsoleHandler.cpp
1>  CBuildingHandler.cpp
1>  CCampaignHandler.cpp
1>  CCreatureHandler.cpp
1>  CDefObjInfoHandler.cpp
1>  CGameState.cpp
1>  CGeneralTextHandler.cpp
1>  CHeroHandler.cpp
1>  CLodHandler.cpp
1>  CObjectHandler.cpp
1>  Connection.cpp
1>  CSpellHandler.cpp
1>  Please define _WIN32_WINNT or _WIN32_WINDOWS appropriately. For example:
1>  - add -D_WIN32_WINNT=0x0501 to the compiler command line; or
1>  - add _WIN32_WINNT=0x0501 to your project's Preprocessor Definitions.
1>  Assuming _WIN32_WINNT=0x0501 (i.e. Windows XP target).
1>e:\vcmi\trunk\lib\cobjecthandler.cpp(724): warning C4355: 'this' : used in base member initializer list
1>e:\vcmi\trunk\lib\cobjecthandler.cpp(1933): warning C4355: 'this' : used in base member initializer list
1>e:\vcmi\trunk\lib\cobjecthandler.cpp(1933): warning C4355: 'this' : used in base member initializer list
1>  CTownHandler.cpp
1>e:\vcmi\trunk\lib\cobjecthandler.cpp(6321): warning C4355: 'this' : used in base member initializer list
1>e:\vcmi\trunk\lib\cobjecthandler.cpp(6872): warning C4355: 'this' : used in base member initializer list
1>  HeroBonus.cpp
1>  IGameCallback.cpp
1>  map.cpp
1>  NetPacksLib.cpp
1>  RegisterTypes.cpp
1>  stdafx.cpp
1>  VCMI_Lib.cpp
1>  CCreatureSet.cpp
1>Link:
1>     Creating library E:\VCMI\trunk\VCMI_lib.lib and object E:\VCMI\trunk\VCMI_lib.exp
1>CConsoleHandler.obj : error LNK2019: unresolved external symbol "void __cdecl setThreadName(long,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?setThreadName@@YAXJABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) referenced in function "public: int __thiscall CConsoleHandler::run(void)" (?run@CConsoleHandler@@QAEHXZ)
1>VCMI_Lib.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifact::nodeName(void)const " (?nodeName@CArtifact@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>HeroBonus.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifact::nodeName(void)const " (?nodeName@CArtifact@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>IGameCallback.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifact::nodeName(void)const " (?nodeName@CArtifact@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>map.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifact::nodeName(void)const " (?nodeName@CArtifact@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifact::nodeName(void)const " (?nodeName@CArtifact@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CCampaignHandler.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifact::nodeName(void)const " (?nodeName@CArtifact@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CGameState.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifact::nodeName(void)const " (?nodeName@CArtifact@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CObjectHandler.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifact::nodeName(void)const " (?nodeName@CArtifact@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>Connection.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifact::nodeName(void)const " (?nodeName@CArtifact@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>VCMI_Lib.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall CArtifact::~CArtifact(void)" (??1CArtifact@@UAE@XZ)
1>HeroBonus.obj : error LNK2019: unresolved external symbol "public: virtual __thiscall CArtifact::~CArtifact(void)" (??1CArtifact@@UAE@XZ) referenced in function "public: struct CGameState::HeroesPool & __thiscall CGameState::HeroesPool::operator=(struct CGameState::HeroesPool const &)" (??4HeroesPool@CGameState@@QAEAAU01@ABU01@@Z)
1>IGameCallback.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall CArtifact::~CArtifact(void)" (??1CArtifact@@UAE@XZ)
1>map.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall CArtifact::~CArtifact(void)" (??1CArtifact@@UAE@XZ)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall CArtifact::~CArtifact(void)" (??1CArtifact@@UAE@XZ)
1>CCampaignHandler.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall CArtifact::~CArtifact(void)" (??1CArtifact@@UAE@XZ)
1>CGameState.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall CArtifact::~CArtifact(void)" (??1CArtifact@@UAE@XZ)
1>CObjectHandler.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall CArtifact::~CArtifact(void)" (??1CArtifact@@UAE@XZ)
1>Connection.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall CArtifact::~CArtifact(void)" (??1CArtifact@@UAE@XZ)
1>VCMI_Lib.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifactInstance::nodeName(void)const " (?nodeName@CArtifactInstance@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>HeroBonus.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifactInstance::nodeName(void)const " (?nodeName@CArtifactInstance@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>IGameCallback.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifactInstance::nodeName(void)const " (?nodeName@CArtifactInstance@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>map.obj : error LNK2019: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifactInstance::nodeName(void)const " (?nodeName@CArtifactInstance@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ) referenced in function "public: virtual __thiscall CArmedInstance::~CArmedInstance(void)"(??1CArmedInstance@@UAE@XZ)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifactInstance::nodeName(void)const " (?nodeName@CArtifactInstance@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CCampaignHandler.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifactInstance::nodeName(void)const " (?nodeName@CArtifactInstance@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CGameState.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifactInstance::nodeName(void)const " (?nodeName@CArtifactInstance@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CObjectHandler.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifactInstance::nodeName(void)const " (?nodeName@CArtifactInstance@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>Connection.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CArtifactInstance::nodeName(void)const " (?nodeName@CArtifactInstance@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>VCMI_Lib.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>HeroBonus.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>IGameCallback.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>map.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>CCampaignHandler.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>CGameState.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>CObjectHandler.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>Connection.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>VCMI_Lib.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CArtifactInstance@@UBE_NXZ)
1>HeroBonus.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CArtifactInstance@@UBE_NXZ)
1>IGameCallback.obj : error LNK2019: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CArtifactInstance@@UBE_NXZ) referenced in function __ehhandler$??0CMapEvent@@QAE@ABV0@@Z
1>map.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CArtifactInstance@@UBE_NXZ)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CArtifactInstance@@UBE_NXZ)
1>CCampaignHandler.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CArtifactInstance@@UBE_NXZ)
1>CGameState.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CArtifactInstance@@UBE_NXZ)
1>CObjectHandler.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CArtifactInstance@@UBE_NXZ)
1>Connection.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CArtifactInstance@@UBE_NXZ)
1>VCMI_Lib.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>HeroBonus.obj : error LNK2019: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z) referenced in function "public: class CGameState & __thiscall CGameState::operator=(class CGameState const &)" (??4CGameState@@QAEAAV0@ABV0@@Z)
1>IGameCallback.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>map.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>CCampaignHandler.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>CGameState.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>CObjectHandler.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>Connection.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>VCMI_Lib.obj : error LNK2019: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z) referenced in function "public: __thiscall CCreatureHandler::CCreatureHandler(class CCreatureHandler const &)" (??0CCreatureHandler@@QAE@ABV0@@Z)
1>HeroBonus.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>IGameCallback.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>map.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>CCampaignHandler.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>CGameState.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>CObjectHandler.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>Connection.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>VCMI_Lib.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CCombinedArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>HeroBonus.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CCombinedArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>IGameCallback.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CCombinedArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>map.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CCombinedArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CCombinedArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>CCampaignHandler.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CCombinedArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>CGameState.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CCombinedArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>CObjectHandler.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CCombinedArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>Connection.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBePutAt(struct ArtifactLocation const &,bool)const " (?canBePutAt@CCombinedArtifactInstance@@UBE_NABUArtifactLocation@@_N@Z)
1>VCMI_Lib.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CCombinedArtifactInstance@@UBE_NXZ)
1>HeroBonus.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CCombinedArtifactInstance@@UBE_NXZ)
1>IGameCallback.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CCombinedArtifactInstance@@UBE_NXZ)
1>map.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CCombinedArtifactInstance@@UBE_NXZ)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CCombinedArtifactInstance@@UBE_NXZ)
1>CCampaignHandler.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CCombinedArtifactInstance@@UBE_NXZ)
1>CGameState.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CCombinedArtifactInstance@@UBE_NXZ)
1>CObjectHandler.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CCombinedArtifactInstance@@UBE_NXZ)
1>Connection.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall CCombinedArtifactInstance::canBeDisassembled(void)const " (?canBeDisassembled@CCombinedArtifactInstance@@UBE_NXZ)
1>VCMI_Lib.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>HeroBonus.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>IGameCallback.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>map.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>CCampaignHandler.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>CGameState.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>CObjectHandler.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>Connection.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::putAt(class CGHeroInstance *,unsigned short)" (?putAt@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>VCMI_Lib.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>HeroBonus.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>IGameCallback.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>map.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>CCampaignHandler.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>CGameState.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>CObjectHandler.obj : error LNK2019: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z) referenced in function "public: __thiscall boost::detail::shared_count::~shared_count(void)" (??1shared_count@detail@boost@@QAE@XZ)
1>Connection.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CCombinedArtifactInstance::removeFrom(class CGHeroInstance *,unsigned short)" (?removeFrom@CCombinedArtifactInstance@@UAEXPAVCGHeroInstance@@G@Z)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: __thiscall CMapInfo::CMapInfo(bool)" (??0CMapInfo@@QAE@_N@Z) referenced in function "public: void __thiscall CMapInfo::`default constructor closure'(void)" (??_FCMapInfo@@QAEXXZ)
1>CObjectHandler.obj : error LNK2001: unresolved external symbol "public: __thiscall CMapInfo::CMapInfo(bool)" (??0CMapInfo@@QAE@_N@Z)
1>Connection.obj : error LNK2001: unresolved external symbol "public: __thiscall CMapInfo::CMapInfo(bool)" (??0CMapInfo@@QAE@_N@Z)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: __thiscall CMapInfo::CMapInfo(bool)" (??0CMapInfo@@QAE@_N@Z)
1>CGameState.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CStack::nodeName(void)const " (?nodeName@CStack@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>Connection.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CStack::nodeName(void)const " (?nodeName@CStack@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>HeroBonus.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CStack::nodeName(void)const " (?nodeName@CStack@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall CStack::nodeName(void)const " (?nodeName@CStack@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: virtual __thiscall CStack::~CStack(void)" (??1CStack@@UAE@XZ) referenced in function "public: virtual void * __thiscall CStack::`scalar deleting destructor'(unsigned int)" (??_GCStack@@UAEPAXI@Z)
1>Connection.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall CStack::~CStack(void)" (??1CStack@@UAE@XZ)
1>HeroBonus.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall CStack::~CStack(void)" (??1CStack@@UAE@XZ)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall CStack::~CStack(void)" (??1CStack@@UAE@XZ)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: __thiscall CMP_stack::CMP_stack(int,int)" (??0CMP_stack@@QAE@HH@Z) referenced in function "public: void __thiscall CMP_stack::`default constructor closure'(void)" (??_FCMP_stack@@QAEXXZ)
1>Connection.obj : error LNK2001: unresolved external symbol "public: __thiscall CMP_stack::CMP_stack(int,int)" (??0CMP_stack@@QAE@HH@Z)
1>HeroBonus.obj : error LNK2001: unresolved external symbol "public: __thiscall CMP_stack::CMP_stack(int,int)" (??0CMP_stack@@QAE@HH@Z)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: __thiscall CMP_stack::CMP_stack(int,int)" (??0CMP_stack@@QAE@HH@Z)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const & __thiscall CArtifact::Description(void)const " (?Description@CArtifact@@QBEABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ) referenced in function "public: void __thiscall MetaString::getLocalString(struct std::pair<unsigned char,unsigned int> const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)const " (?getLocalString@MetaString@@QBEXABU?$pair@EI@std@@AAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@@Z)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const & __thiscall CArtifact::Name(void)const " (?Name@CArtifact@@QBEABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ) referenced in function "public: void __thiscall MetaString::getLocalString(struct std::pair<unsigned char,unsigned int> const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)const " (?getLocalString@MetaString@@QBEXABU?$pair@EI@std@@AAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@@Z)
1>CObjectHandler.obj : error LNK2001: unresolved external symbol "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const & __thiscall CArtifact::Name(void)const " (?Name@CArtifact@@QBEABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>HeroBonus.obj : error LNK2001: unresolved external symbol "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const & __thiscall CArtifact::Name(void)const " (?Name@CArtifact@@QBEABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: unsigned short __thiscall CArtHandler::getRandomArt(int)" (?getRandomArt@CArtHandler@@QAEGH@Z) referenced in function "public: struct std::pair<int,int> __thiscall CGameState::pickObject(class CGObjectInstance *)" (?pickObject@CGameState@@QAE?AU?$pair@HH@std@@PAVCGObjectInstance@@@Z)
1>IGameCallback.obj : error LNK2001: unresolved external symbol "public: unsigned short __thiscall CArtHandler::getRandomArt(int)" (?getRandomArt@CArtHandler@@QAEGH@Z)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: static struct BattleInfo * __cdecl BattleInfo::setupBattle(class int3,int,int,class CArmedInstance const * * const,class CGHeroInstance const * * const,bool,class CGTownInstance const *)" (?setupBattle@BattleInfo@@SAPAU1@Vint3@@HHQAPBVCArmedInstance@@QAPBVCGHeroInstance@@_NPBVCGTownInstance@@@Z) referenced in function "public: struct BattleInfo * __thiscall CGameState::setupBattle(class int3,class CArmedInstance const * * const,class CGHeroInstance const * * const,bool,class CGTownInstance const *)" (?setupBattle@CGameState@@QAEPAUBattleInfo@@Vint3@@QAPBVCArmedInstance@@QAPBVCGHeroInstance@@_NPBVCGTownInstance@@@Z)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: void __thiscall CArtHandler::initAllowedArtifactsList(class std::vector<unsigned char,class std::allocator<unsigned char> > const &)" (?initAllowedArtifactsList@CArtHandler@@QAEXABV?$vector@EV?$allocator@E@std@@@std@@@Z) referenced in function __catch$?init@CGameState@@QAEXPAUStartInfo@@IH@Z$0
1>CGameState.obj : error LNK2019: unresolved external symbol "public: void __thiscall BattleInfo::localInit(void)" (?localInit@BattleInfo@@QAEXXZ) referenced in function __catch$?init@CGameState@@QAEXPAUStartInfo@@IH@Z$0
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: void __thiscall BattleInfo::localInit(void)" (?localInit@BattleInfo@@QAEXXZ)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: int __thiscall CArtifactInstance::firstAvailableSlot(class CGHeroInstance const *)const " (?firstAvailableSlot@CArtifactInstance@@QBEHPBVCGHeroInstance@@@Z) referenced in function "public: static void __cdecl `public: void __thiscall CGameState::init(struct StartInfo *,unsigned int,int)'::`2'::HLP::giveCampaignBonusToHero(class CGHeroInstance *,struct StartInfo const *,class CScenarioTravel const &)" (?giveCampaignBonusToHero@HLP@?1??init@CGameState@@QAEXPAUStartInfo@@IH@Z@SAXPAVCGHeroInstance@@PBU4@ABVCScenarioTravel@@@Z)
1>CObjectHandler.obj : error LNK2001: unresolved external symbol "public: int __thiscall CArtifactInstance::firstAvailableSlot(class CGHeroInstance const *)const " (?firstAvailableSlot@CArtifactInstance@@QBEHPBVCGHeroInstance@@@Z)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: static class CArtifactInstance * __cdecl CArtifactInstance::createScroll(class CSpell const *)" (?createScroll@CArtifactInstance@@SAPAV1@PBVCSpell@@@Z) referenced in function "public: static void __cdecl `public: void __thiscall CGameState::init(struct StartInfo *,unsigned int,int)'::`2'::HLP::giveCampaignBonusToHero(class CGHeroInstance *,struct StartInfo const *,class CScenarioTravel const &)" (?giveCampaignBonusToHero@HLP@?1??init@CGameState@@QAEXPAUStartInfo@@IH@Z@SAXPAVCGHeroInstance@@PBU4@ABVCScenarioTravel@@@Z)
1>map.obj : error LNK2001: unresolved external symbol "public: static class CArtifactInstance * __cdecl CArtifactInstance::createScroll(class CSpell const *)" (?createScroll@CArtifactInstance@@SAPAV1@PBVCSpell@@@Z)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: __thiscall CArtifact::CArtifact(void)" (??0CArtifact@@QAE@XZ) referenced in function "public: virtual void __thiscall CPointerLoader<class CISer<class CConnection>,class CArtifact>::loadPtr(class CLoaderBase &,void *,unsigned int)const " (?loadPtr@?$CPointerLoader@V?$CISer@VCConnection@@@@VCArtifact@@@@UBEXAAVCLoaderBase@@PAXI@Z)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: __thiscall CStack::CStack(void)" (??0CStack@@QAE@XZ) referenced in function "public: virtual void __thiscall CPointerLoader<class CISer<class CConnection>,class CStack>::loadPtr(class CLoaderBase &,void *,unsigned int)const " (?loadPtr@?$CPointerLoader@V?$CISer@VCConnection@@@@VCStack@@@@UBEXAAVCLoaderBase@@PAXI@Z)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: __thiscall CArtifactInstance::CArtifactInstance(void)" (??0CArtifactInstance@@QAE@XZ) referenced in function "public: virtual void __thiscall CPointerLoader<class CISer<class CConnection>,class CArtifactInstance>::loadPtr(class CLoaderBase &,void *,unsigned int)const " (?loadPtr@?$CPointerLoader@V?$CISer@VCConnection@@@@VCArtifactInstance@@@@UBEXAAVCLoaderBase@@PAXI@Z)
1>map.obj : error LNK2001: unresolved external symbol "public: __thiscall CArtifactInstance::CArtifactInstance(void)" (??0CArtifactInstance@@QAE@XZ)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: __thiscall CCombinedArtifactInstance::CCombinedArtifactInstance(void)" (??0CCombinedArtifactInstance@@QAE@XZ) referenced in function "public: virtual void __thiscall CPointerLoader<class CISer<class CConnection>,class CCombinedArtifactInstance>::loadPtr(class CLoaderBase &,void *,unsigned int)const " (?loadPtr@?$CPointerLoader@V?$CISer@VCConnection@@@@VCCombinedArtifactInstance@@@@UBEXAAVCLoaderBase@@PAXI@Z)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: __thiscall BattleAction::BattleAction(void)" (??0BattleAction@@QAE@XZ) referenced in function "public: __thiscall StartAction::StartAction(void)" (??0StartAction@@QAE@XZ)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: __thiscall CMapInfo::~CMapInfo(void)" (??1CMapInfo@@QAE@XZ) referenced in function "public: void * __thiscall CMapInfo::`scalar deleting destructor'(unsigned int)" (??_GCMapInfo@@QAEPAXI@Z)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: void __thiscall CArtifactInstance::deserializationFix(void)" (?deserializationFix@CArtifactInstance@@QAEXXZ) referenced in function "public: void __thiscall CArtifactInstance::serialize<class CISer<class CConnection> >(class CISer<class CConnection> &,int)" (??$serialize@V?$CISer@VCConnection@@@@@CArtifactInstance@@QAEXAAV?$CISer@VCConnection@@@@H@Z)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: void __thiscall CCombinedArtifactInstance::deserializationFix(void)" (?deserializationFix@CCombinedArtifactInstance@@QAEXXZ) referenced in function "public: void __thiscall CCombinedArtifactInstance::serialize<class CISer<class CConnection> >(class CISer<class CConnection> &,int)" (??$serialize@V?$CISer@VCConnection@@@@@CCombinedArtifactInstance@@QAEXAAV?$CISer@VCConnection@@@@H@Z)
1>CGameState.obj : error LNK2019: unresolved external symbol "public: __thiscall CCombinedArtifactInstance::ConstituentInfo::ConstituentInfo(class CArtifactInstance *,unsigned short)" (??0ConstituentInfo@CCombinedArtifactInstance@@QAE@PAVCArtifactInstance@@G@Z) referenced in function "void __cdecl std::_Uninit_def_fill_n<struct CCombinedArtifactInstance::ConstituentInfo *,unsigned int,struct CCombinedArtifactInstance::ConstituentInfo,class std::allocator<struct CCombinedArtifactInstance::ConstituentInfo>,struct CCombinedArtifactInstance::ConstituentInfo>(struct CCombinedArtifactInstance::ConstituentInfo *,unsigned int,struct CCombinedArtifactInstance::ConstituentInfo const *,class std::allocator<struct CCombinedArtifactInstance::ConstituentInfo> &,struct CCombinedArtifactInstance::ConstituentInfo *,struct std::_Nonscalar_ptr_iterator_tag)" (??$_Uninit_def_fill_n@PAUConstituentInfo@CCombinedArtifactInstance@@IU12@V?$allocator@UConstituentInfo@CCombinedArtifactInstance@@@std@@U12@@std@@YAXPAUConstituentInfo@CCombinedArtifactInstance@@IPBU12@AAV?$allocator@UConstituentInfo@CCombinedArtifactInstance@@@0@0U_Nonscalar_ptr_iterator_tag@0@@Z)
1>CObjectHandler.obj : error LNK2019: unresolved external symbol "public: static class CArtifactInstance * __cdecl CArtifactInstance::createNewArtifactInstance(int)" (?createNewArtifactInstance@CArtifactInstance@@SAPAV1@H@Z) referenced in function "public: void __thiscall CGHeroInstance::initHero(void)" (?initHero@CGHeroInstance@@QAEXXZ)
1>map.obj : error LNK2001: unresolved external symbol "public: static class CArtifactInstance * __cdecl CArtifactInstance::createNewArtifactInstance(int)" (?createNewArtifactInstance@CArtifactInstance@@SAPAV1@H@Z)
1>CObjectHandler.obj : error LNK2019: unresolved external symbol "public: static int __cdecl CArtHandler::convertMachineID(int,bool)" (?convertMachineID@CArtHandler@@SAHH_N@Z) referenced in function "public: void __thiscall CGHeroInstance::initArmy(class IArmyDescriptor *)" (?initArmy@CGHeroInstance@@QAEXPAVIArmyDescriptor@@@Z)
1>CObjectHandler.obj : error LNK2019: unresolved external symbol "public: static class CArtifactInstance * __cdecl CArtifactInstance::createNewArtifactInstance(class CArtifact *)" (?createNewArtifactInstance@CArtifactInstance@@SAPAV1@PAVCArtifact@@@Z) referenced in function "public: void __thiscall CGHeroInstance::giveArtifact(unsigned int)" (?giveArtifact@CGHeroInstance@@QAEXI@Z)
1>CObjectHandler.obj : error LNK2019: unresolved external symbol "public: int __thiscall CArtifactInstance::firstBackpackSlot(class CGHeroInstance const *)const " (?firstBackpackSlot@CArtifactInstance@@QBEHPBVCGHeroInstance@@@Z) referenced in function "public: void __thiscall CGHeroInstance::putInBackpack(class CArtifactInstance *)" (?putInBackpack@CGHeroInstance@@QAEXPAVCArtifactInstance@@@Z)
1>CObjectHandler.obj : error LNK2019: unresolved external symbol "public: void __thiscall CArtifactInstance::setType(class CArtifact *)" (?setType@CArtifactInstance@@QAEXPAVCArtifact@@@Z) referenced in function "public: virtual void __thiscall CGArtifact::initObj(void)" (?initObj@CGArtifact@@UAEXXZ)
1>NetPacksLib.obj : error LNK2001: unresolved external symbol "public: void __thiscall CArtifactInstance::setType(class CArtifact *)" (?setType@CArtifactInstance@@QAEXPAVCArtifact@@@Z)
1>CObjectHandler.obj : error LNK2019: unresolved external symbol "public: int __thiscall CArtifact::getArtClassSerial(void)const " (?getArtClassSerial@CArtifact@@QBEHXZ) referenced in function "public: bool __thiscall IMarket::getOffer(int,int,int &,int &,enum EMarketMode)const " (?getOffer@IMarket@@QBE_NHHAAH0W4EMarketMode@@@Z)
1>IGameCallback.obj : error LNK2019: unresolved external symbol "public: unsigned short __thiscall CArtHandler::getArtSync(unsigned int,int)" (?getArtSync@CArtHandler@@QAEGIH@Z) referenced in function "public: virtual unsigned short __thiscall IGameCallback::getArtSync(unsigned int,int)" (?getArtSync@IGameCallback@@UAEGIH@Z)
1>IGameCallback.obj : error LNK2019: unresolved external symbol "public: void __thiscall CArtHandler::erasePickedArt(int)" (?erasePickedArt@CArtHandler@@QAEXH@Z) referenced in function "public: virtual void __thiscall IGameCallback::erasePickedArt(int)" (?erasePickedArt@IGameCallback@@UAEXH@Z)
1>NetPacksLib.obj : error LNK2019: unresolved external symbol "public: void __thiscall CArtifactInstance::move(struct ArtifactLocation &,struct ArtifactLocation &)" (?move@CArtifactInstance@@QAEXAAUArtifactLocation@@0@Z) referenced in function "public: void __thiscall MoveArtifact::applyGs(class CGameState *)" (?applyGs@MoveArtifact@@QAEXPAVCGameState@@@Z)
1>NetPacksLib.obj : error LNK2019: unresolved external symbol "public: void __thiscall CCombinedArtifactInstance::addAsConstituent(class CArtifactInstance *,int)" (?addAsConstituent@CCombinedArtifactInstance@@QAEXPAVCArtifactInstance@@H@Z) referenced in function "public: void __thiscall AssembledArtifact::applyGs(class CGameState *)" (?applyGs@AssembledArtifact@@QAEXPAVCGameState@@@Z)
1>NetPacksLib.obj : error LNK2019: unresolved external symbol "private: __thiscall CCombinedArtifactInstance::CCombinedArtifactInstance(class CArtifact *)" (??0CCombinedArtifactInstance@@AAE@PAVCArtifact@@@Z) referenced in function "public: void __thiscall AssembledArtifact::applyGs(class CGameState *)" (?applyGs@AssembledArtifact@@QAEXPAVCGameState@@@Z)
1>NetPacksLib.obj : error LNK2019: unresolved external symbol "public: class std::vector<class CArtifact const *,class std::allocator<class CArtifact const *> > __thiscall CArtifactInstance::assemblyPossibilities(class CGHeroInstance const *)const " (?assemblyPossibilities@CArtifactInstance@@QBE?AV?$vector@PBVCArtifact@@V?$allocator@PBVCArtifact@@@std@@@std@@PBVCGHeroInstance@@@Z) referenced in function "public: void __thiscall AssembledArtifact::applyGs(class CGameState *)" (?applyGs@AssembledArtifact@@QAEXPAVCGameState@@@Z)
1>NetPacksLib.obj : error LNK2019: unresolved external symbol "public: class CStack * __thiscall BattleInfo::getStack(int,bool)" (?getStack@BattleInfo@@QAEPAVCStack@@H_N@Z) referenced in function "public: void __thiscall BattleSetActiveStack::applyGs(class CGameState *)" (?applyGs@BattleSetActiveStack@@QAEXPAVCGameState@@@Z)
1>NetPacksLib.obj : error LNK2019: unresolved external symbol "public: void __thiscall CStack::postInit(void)" (?postInit@CStack@@QAEXXZ) referenced in function "public: void __thiscall BattleSpellCast::applyGs(class CGameState *)" (?applyGs@BattleSpellCast@@QAEXPAVCGameState@@@Z)
1>NetPacksLib.obj : error LNK2019: unresolved external symbol "public: class CStack * __thiscall BattleInfo::generateNewStack(class CStackInstance const &,int,bool,int,struct THex)const " (?generateNewStack@BattleInfo@@QBEPAVCStack@@ABVCStackInstance@@H_NHUTHex@@@Z) referenced in function "public: void __thiscall BattleSpellCast::applyGs(class CGameState *)" (?applyGs@BattleSpellCast@@QAEXPAVCGameState@@@Z)
1>NetPacksLib.obj : error LNK2019: unresolved external symbol "public: static bool __cdecl BattleInfo::isAccessible(struct THex,bool *,bool,bool,bool,bool)" (?isAccessible@BattleInfo@@SA_NUTHex@@PA_N_N222@Z) referenced in function "public: void __thiscall BattleSpellCast::applyGs(class CGameState *)" (?applyGs@BattleSpellCast@@QAEXPAVCGameState@@@Z)
1>NetPacksLib.obj : error LNK2019: unresolved external symbol "public: void __thiscall BattleInfo::getAccessibilityMap(bool *,bool,bool,bool,class std::set<struct THex,struct std::less<struct THex>,class std::allocator<struct THex> > &,bool,class CStack const *)const " (?getAccessibilityMap@BattleInfo@@QBEXPA_N_N11AAV?$set@UTHex@@U?$less@UTHex@@@std@@V?$allocator@UTHex@@@3@@std@@1PBVCStack@@@Z) referenced in function "public: void __thiscall BattleSpellCast::applyGs(class CGameState *)" (?applyGs@BattleSpellCast@@QAEXPAVCGameState@@@Z)
1>NetPacksLib.obj : error LNK2019: unresolved external symbol "public: unsigned int __thiscall BattleInfo::getSpellCost(class CSpell const *,class CGHeroInstance const *)const " (?getSpellCost@BattleInfo@@QBEIPBVCSpell@@PBVCGHeroInstance@@@Z) referenced in function "public: void __thiscall BattleSpellCast::applyGs(class CGameState *)" (?applyGs@BattleSpellCast@@QAEXPAVCGameState@@@Z)
1>NetPacksLib.obj : error LNK2019: unresolved external symbol "public: bool __thiscall CStack::doubleWide(void)const " (?doubleWide@CStack@@QBE_NXZ) referenced in function "public: void __thiscall StacksHealedOrResurrected::applyGs(class CGameState *)" (?applyGs@StacksHealedOrResurrected@@QAEXPAVCGameState@@@Z)
1>NetPacksLib.obj : error LNK2019: unresolved external symbol "public: class std::vector<struct THex,class std::allocator<struct THex> > __thiscall BattleInfo::getAccessibility(class CStack const *,bool,class std::vector<struct THex,class std::allocator<struct THex> > *)const " (?getAccessibility@BattleInfo@@QBE?AV?$vector@UTHex@@V?$allocator@UTHex@@@std@@@std@@PBVCStack@@_NPAV23@@Z) referenced in function "public: void __thiscall StacksHealedOrResurrected::applyGs(class CGameState *)" (?applyGs@StacksHealedOrResurrected@@QAEXPAVCGameState@@@Z)
1>VCMI_Lib.obj : error LNK2019: unresolved external symbol "public: void __thiscall CArtHandler::loadArtifacts(bool)" (?loadArtifacts@CArtHandler@@QAEX_N@Z) referenced in function "public: void __thiscall LibClasses::init(void)" (?init@LibClasses@@QAEXXZ)
1>VCMI_Lib.obj : error LNK2019: unresolved external symbol "public: __thiscall CArtHandler::CArtHandler(void)" (??0CArtHandler@@QAE@XZ) referenced in function "public: void __thiscall LibClasses::init(void)" (?init@LibClasses@@QAEXXZ)
1>VCMI_Lib.obj : error LNK2019: unresolved external symbol "public: __thiscall CArtHandler::~CArtHandler(void)" (??1CArtHandler@@QAE@XZ) referenced in function "public: void * __thiscall CArtHandler::`scalar deleting destructor'(unsigned int)" (??_GCArtHandler@@QAEPAXI@Z)
1>E:\VCMI\trunk\VCMI_lib.dll : fatal error LNK1120: 56 unresolved externals
1>
1>Build FAILED.
1>
1>Time Elapsed 00:00:46.66
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Ustawień solucji nie zmieniałem.

Dwie rzeczy:

  1. nie polecam boosta 1.44 do Visuala 10.0 - trzeba ustawiać dodatkowe makra, żeby się skompilowało. Nie ma ich w repo, bo to dotyczy tylko tej jednej specyficznej kombinacji - inne wersje boosta działają z Visualem, a pod gcc w ogóle nie ma takich problemów.
  2. te błędy są przez to, że w projekcie liba brakuje pewnych plików. Sprawdź, czy na pewno masz wszystkie z trunk/lib (i chyba jeszcze jakiś z głównego folderu, ale nie pamiętam który - jakby dalej nie działało to wklej błąd i ci napiszę co zrobić). Tak an oko to brakuje CArtHandler.cpp i BattleState.cpp, prawdopodobnie jeszcze CThreadHelper.cpp z głównego folderu.

Faktycznie, brakowało kilku plików. Po ich dodaniu ‘VCMI_lib’ skompilowało się poprawnie. Po podawaniu plików brakujących plików z ‘genius’ i ‘StupidAI’ też dało się skompilować. 'VCMI_client" wciąż ma błędy, choć część udało mi się usunąć. Log dla client

1>------ Build started: Project: VCMI_client, Configuration: Debug Win32 ------
1>Build started 2011-03-10 16:37:15.
1>InitializeBuildStatus:
1>  Creating "Debug_VC9\VCMI_client.unsuccessfulbuild" because "AlwaysCreate" was specified.
1>ClCompile:
1>  CHeroHandler.cpp
1>  CObjectHandler.cpp
1>  stdafx.cpp
1>  AdventureMapButton.cpp
1>  CAdvmapInterface.cpp
1>e:\vcmi\trunk\lib\cobjecthandler.cpp(724): warning C4355: 'this' : used in base member initializer list
1>e:\vcmi\trunk\lib\cobjecthandler.cpp(1933): warning C4355: 'this' : used in base member initializer list
1>e:\vcmi\trunk\lib\cobjecthandler.cpp(1933): warning C4355: 'this' : used in base member initializer list
1>  CAnimation.cpp
1>e:\vcmi\trunk\lib\cobjecthandler.cpp(6321): warning C4355: 'this' : used in base member initializer list
1>e:\vcmi\trunk\lib\cobjecthandler.cpp(6872): warning C4355: 'this' : used in base member initializer list
1>  CBattleInterface.cpp
1>e:\programy\visual studio ultimate\vc\include\boost\utility\addressof.hpp(38): warning C4506: no definition for inline function 'void ColorPutter<bpp,incrementPtr>::PutColor(Uint8 *&,const SDL_Color &)'
1>          with
1>          
1>              bpp=2,
1>              incrementPtr=1
1>          ]
1>e:\programy\visual studio ultimate\vc\include\boost\utility\addressof.hpp(38): warning C4506: no definition for inline function 'void ColorPutter<bpp,incrementPtr>::PutColorAlpha(Uint8 *&,const SDL_Color &)'
1>          with
1>          
1>              bpp=2,
1>              incrementPtr=1
1>          ]
1>e:\programy\visual studio ultimate\vc\include\boost\utility\addressof.hpp(38): warning C4506: no definition for inline function 'void ColorPutter<bpp,incrementPtr>::PutColorRow(Uint8 *&,const SDL_Color &,size_t)'
1>          with
1>          
1>              bpp=2,
1>              incrementPtr=1
1>          ]
1>e:\programy\visual studio ultimate\vc\include\boost\utility\addressof.hpp(38): warning C4506: no definition for inline function 'void ColorPutter<bpp,incrementPtr>::PutColor(Uint8 *&,const SDL_Color &)'
1>          with
1>          
1>              bpp=3,
1>              incrementPtr=1
1>          ]
1>e:\programy\visual studio ultimate\vc\include\boost\utility\addressof.hpp(38): warning C4506: no definition for inline function 'void ColorPutter<bpp,incrementPtr>::PutColorAlpha(Uint8 *&,const SDL_Color &)'
1>          with
1>          
1>              bpp=3,
1>              incrementPtr=1
1>          ]
1>e:\programy\visual studio ultimate\vc\include\boost\utility\addressof.hpp(38): warning C4506: no definition for inline function 'void ColorPutter<bpp,incrementPtr>::PutColorRow(Uint8 *&,const SDL_Color &,size_t)'
1>          with
1>          
1>              bpp=3,
1>              incrementPtr=1
1>          ]
1>e:\programy\visual studio ultimate\vc\include\boost\utility\addressof.hpp(38): warning C4506: no definition for inline function 'void ColorPutter<bpp,incrementPtr>::PutColor(Uint8 *&,const SDL_Color &)'
1>          with
1>          
1>              bpp=4,
1>              incrementPtr=1
1>          ]
1>e:\programy\visual studio ultimate\vc\include\boost\utility\addressof.hpp(38): warning C4506: no definition for inline function 'void ColorPutter<bpp,incrementPtr>::PutColorAlpha(Uint8 *&,const SDL_Color &)'
1>          with
1>          
1>              bpp=4,
1>              incrementPtr=1
1>          ]
1>e:\programy\visual studio ultimate\vc\include\boost\utility\addressof.hpp(38): warning C4506: no definition for inline function 'void ColorPutter<bpp,incrementPtr>::PutColorRow(Uint8 *&,const SDL_Color &,size_t)'
1>          with
1>          
1>              bpp=4,
1>              incrementPtr=1
1>          ]
1>  CBitmapHandler.cpp
1>  CCallback.cpp
1>  CCastleInterface.cpp
1>  CConfigHandler.cpp
1>e:\vcmi\trunk\client\ccastleinterface.cpp(365): warning C4355: 'this' : used in base member initializer list
1>e:\vcmi\trunk\client\ccastleinterface.cpp(365): warning C4355: 'this' : used in base member initializer list
1>e:\vcmi\trunk\client\ccastleinterface.cpp(1986): warning C4305: 'argument' : truncation from 'int' to 'bool'
1>  CCreatureAnimation.cpp
1>  CCreatureWindow.cpp
1>e:\programy\visual studio ultimate\vc\include\utility(142): warning C4506: no definition for inline function 'void ColorPutter<bpp,incrementPtr>::PutColor(Uint8 *&,const Uint8 &,const Uint8 &,const Uint8 &,const Uint8 &)'
1>          with
1>          
1>              bpp=3,
1>              incrementPtr=0
1>          ]
1>e:\programy\visual studio ultimate\vc\include\utility(142): warning C4506: no definition for inline function 'void ColorPutter<bpp,incrementPtr>::PutColor(Uint8 *&,const Uint8 &,const Uint8 &,const Uint8 &)'
1>          with
1>          
1>              bpp=3,
1>              incrementPtr=0
1>          ]
1>e:\programy\visual studio ultimate\vc\include\utility(142): warning C4506: no definition for inline function 'void ColorPutter<bpp,incrementPtr>::PutColor(Uint8 *&,const Uint8 &,const Uint8 &,const Uint8 &,const Uint8 &)'
1>          with
1>          
1>              bpp=4,
1>              incrementPtr=0
1>          ]
1>e:\programy\visual studio ultimate\vc\include\utility(142): warning C4506: no definition for inline function 'void ColorPutter<bpp,incrementPtr>::PutColor(Uint8 *&,const Uint8 &,const Uint8 &,const Uint8 &)'
1>          with
1>          
1>              bpp=4,
1>              incrementPtr=0
1>          ]
1>e:\programy\visual studio ultimate\vc\include\utility(142): warning C4506: no definition for inline function 'void ColorPutter<bpp,incrementPtr>::PutColor(Uint8 *&,const Uint8 &,const Uint8 &,const Uint8 &,const Uint8 &)'
1>          with
1>          
1>              bpp=2,
1>              incrementPtr=0
1>          ]
1>e:\programy\visual studio ultimate\vc\include\utility(142): warning C4506: no definition for inline function 'void ColorPutter<bpp,incrementPtr>::PutColor(Uint8 *&,const Uint8 &,const Uint8 &,const Uint8 &)'
1>          with
1>          
1>              bpp=2,
1>              incrementPtr=0
1>          ]
1>  CCursorHandler.cpp
1>  CDefHandler.cpp
1>  CGameInfo.cpp
1>  CGameInterface.cpp
1>  CHeroWindow.cpp
1>  CKingdomInterface.cpp
1>  Client.cpp
1>  CMessage.cpp
1>e:\vcmi\trunk\client\cherowindow.cpp(94): warning C4355: 'this' : used in base member initializer list
1>e:\vcmi\trunk\client\ckingdominterface.cpp(73): warning C4305: 'argument' : truncation from 'int' to 'bool'
1>e:\vcmi\trunk\client\ckingdominterface.cpp(403): warning C4305: 'argument' : truncation from 'int' to 'bool'
1>e:\vcmi\trunk\client\ckingdominterface.cpp(419): warning C4305: 'argument' : truncation from 'int' to 'bool'
1>e:\programy\visual studio ultimate\vc\include\xutility(2227): warning C4996: 'std::_Copy_impl': Function call with parameters that may be unsafe - this call relies on the caller to check that the passed values are correct. To disable this warning, use -D_SCL_SECURE_NO_WARNINGS. See documentation on how to use Visual C++ 'Checked Iterators'
1>          e:\programy\visual studio ultimate\vc\include\xutility(2212) : see declaration of 'std::_Copy_impl'
1>          e:\programy\visual studio ultimate\vc\include\boost\algorithm\string\detail\classification.hpp(102) : see reference to function template instantiation '_OutIt std::copy<const char*,char*>(_InIt,_InIt,_OutIt)' being compiled
1>          with
1>          
1>              _OutIt=char *,
1>              _InIt=const char *
1>          ]
1>          e:\programy\visual studio ultimate\vc\include\boost\algorithm\string\classification.hpp(206) : see reference to function template instantiation 'boost::algorithm::detail::is_any_ofF<CharT>::is_any_ofF<boost::iterator_range<IteratorT>>(const RangeT &)' being compiled
1>          with
1>          
1>              CharT=char,
1>              IteratorT=const char *,
1>              RangeT=boost::iterator_range<const char *>
1>          ]
1>          e:\vcmi\trunk\client\cmessage.cpp(126) : see reference to function template instantiation 'boost::algorithm::detail::is_any_ofF<CharT> boost::algorithm::is_any_of<const char[2]>(RangeT (&))' being compiled
1>          with
1>          
1>              CharT=char,
1>              RangeT=const char [2]
1>          ]
1>  CMT.cpp
1>  CMusicHandler.cpp
1>e:\programy\visual studio ultimate\vc\include\boost\interprocess\detail\move.hpp(342): error C2440: 'return' : cannot convert from 'InternalLock' to 'boost::interprocess::scoped_lock<Mutex> &&'
1>          with
1>          
1>              Mutex=boost::interprocess::interprocess_mutex
1>          ]
1>          You cannot bind an lvalue to an rvalue reference
1>          e:\programy\visual studio ultimate\vc\include\boost\interprocess\sync\emulation\interprocess_condition.hpp(97) : see reference to function template instantiation 'boost::interprocess::scoped_lock<Mutex> &&boost::interprocess::move<InternalLock&>(T)' being compiled
1>          with
1>          
1>              Mutex=boost::interprocess::interprocess_mutex,
1>              T=InternalLock &
1>          ]
1>e:\programy\visual studio ultimate\vc\include\boost\interprocess\detail\move.hpp(342): error C2440: 'return' : cannot convert from 'boost::interprocess::mapped_region' to 'boost::interprocess::mapped_region &&'
1>          You cannot bind an lvalue to an rvalue reference
1>          e:\programy\visual studio ultimate\vc\include\boost\interprocess\mapped_region.hpp(159) : see reference to function template instantiation 'boost::interprocess::mapped_region &&boost::interprocess::move<boost::interprocess::mapped_region&>(T)' being compiled
1>          with
1>          
1>              T=boost::interprocess::mapped_region &
1>          ]
1>e:\programy\visual studio ultimate\vc\include\boost\interprocess\detail\move.hpp(342): error C2440: 'return' : cannot convert from 'boost::interprocess::shared_memory_object' to 'boost::interprocess::shared_memory_object &&'
1>          You cannot bind an lvalue to an rvalue reference
1>          e:\programy\visual studio ultimate\vc\include\boost\interprocess\shared_memory_object.hpp(85) : see reference to function template instantiation 'boost::interprocess::shared_memory_object &&boost::interprocess::move<boost::interprocess::shared_memory_object&>(T)' being compiled
1>          with
1>          
1>              T=boost::interprocess::shared_memory_object &
1>          ]
1>  CPlayerInterface.cpp
1>  CPreGame.cpp
1>  CSndHandler.cpp
1>  CSpellWindow.cpp
1>  CThreadHelper.cpp
1>  CVideoHandler.cpp
1>  Graphics.cpp
1>  GUIBase.cpp
1>  GUIClasses.cpp
1>  mapHandler.cpp
1>  NetPacksClient.cpp
1>  SDL_Extensions.cpp
1>  SDL_framerate.cpp
1>e:\vcmi\trunk\client\guiclasses.cpp(4062): warning C4305: 'argument' : truncation from 'int' to 'bool'
1>e:\vcmi\trunk\client\guiclasses.cpp(4068): warning C4305: 'argument' : truncation from 'int' to 'bool'
1>e:\vcmi\trunk\client\guiclasses.cpp(4073): warning C4305: 'argument' : truncation from 'int' to 'bool'
1>e:\programy\visual studio ultimate\vc\include\xutility(2227): warning C4996: 'std::_Copy_impl': Function call with parameters that may be unsafe - this call relies on the caller to check that the passed values are correct. To disable this warning, use -D_SCL_SECURE_NO_WARNINGS. See documentation on how to use Visual C++ 'Checked Iterators'
1>          e:\programy\visual studio ultimate\vc\include\xutility(2212) : see declaration of 'std::_Copy_impl'
1>          e:\programy\visual studio ultimate\vc\include\boost\algorithm\string\detail\classification.hpp(102) : see reference to function template instantiation '_OutIt std::copy<const char*,char*>(_InIt,_InIt,_OutIt)' being compiled
1>          with
1>          
1>              _OutIt=char *,
1>              _InIt=const char *
1>          ]
1>          e:\programy\visual studio ultimate\vc\include\boost\algorithm\string\classification.hpp(206) : see reference to function template instantiation 'boost::algorithm::detail::is_any_ofF<CharT>::is_any_ofF<boost::iterator_range<IteratorT>>(const RangeT &)' being compiled
1>          with
1>          
1>              CharT=char,
1>              IteratorT=const char *,
1>              RangeT=boost::iterator_range<const char *>
1>          ]
1>          e:\vcmi\trunk\client\guiclasses.cpp(6365) : see reference to function template instantiation 'boost::algorithm::detail::is_any_ofF<CharT> boost::algorithm::is_any_of<const char[2]>(RangeT (&))' being compiled
1>          with
1>          
1>              CharT=char,
1>              RangeT=const char [2]
1>          ]
1>
1>Build FAILED.
1>
1>Time Elapsed 00:00:55.23
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Swoją drogą to dziwne, że brakowało mi tyle plików. Podejrzewam, że szkoda stała się podczas konwersji. Konwertowałem wcześniej sporo programów, oczywiście nie o takiej skali, i błędów nie było.

Ten błąd z kompilacją klienta to właśnie objaw problemów z boostem 1.44. Albo zaktualizuj do 1.45 lub 1.46, albo zdefiniuj makro BOOST_NO_RVALUE_REFERENCES w każdym pliku załączającym boost interprocess (czyli w tych plikach, których kompilacja się nie powiedzie). Podobne problemy będziesz miał przy serwerze.

Dodanie makra nie pomaga. Błędy takie same. Co do nowszych wersji boosta jest taki problem, że nie mają skompilowanych bibliotek libboost których się domaga linker. Mógłbym sam skompilować ale nigdzie nie znalazłem solucji budujących te liby, a na własną rękę trochę ciężko stworzyć projekty dla ok. 30 libów. Dzisiaj nie miałem czasu poeksperymentować. Może jutro znajdę jakieś rozwiązanie.

fenuks, istnieje coś takiego jak makefile prawda?
a poza tym boost ma własny mechanizm autobudowania bibliotek który wystarczy odpalić
(bodajże nazywał się bjam)

nawet ja to wiem :mrgreen:

Tak jest, bjam. Kiedyś tam mieli zmienić nazwę, ale najwidoczniej nic im z tego nie wyszło. :wink:

Musisz dodać makro na samym początku feralnych plików, przed include’ami. Wtedy i tylko wtedy pomoże. [Alternatywnie możesz je globalnie zdefiniować w projekcie poprzez opcje kompilatora, ale to już trudniejszy wariant.]

Bez urazy, ale nie mogę się oprzeć wrażeniu, iż uniknąłbyś większości swoich problemów, gdybyś nieco chętniej i nieco szerzej czytał:
W tym wątku zamieściłęm link do paczki z względnie nowymi projektami dla Visuala 2010, dosłownie parę plików się od tego czasu ruszyło. W ciągu kilku najbliższych dni mam nadzieję umieścić na SVN-ie nowe pliki. W tym wątku był też poruszany problem Boosta 1.44, który zaobserwowałeś.

Budowanie Boosta naprawdę nie wymaga trudnych eksperymentów. Sprowadza się do wydania dokładnie dwu (no dobrze, nie licząc „cd” do folderu Boosta :stuck_out_tongue: ) komend w linii poleceń Visuala. Zaglądając do dokumentacji Boosta nie jest problemem je odszukać: boost.org/doc/libs/1_46_1/mo … rom-source

Polecam zbudować najnowszego Boosta, niemniej jeśli jest to dla Ciebie kłopotliwe, a makro dalej nie pomaga, to zawsze możesz ściągnąć 1.43 z binarkami, też jest póki co wspierany.

Wreszcie znalazłem trochę czasu, i udało mi się to wszystko poskładać do kupy i skompilować, aczkolwiek:
Błąd wywalany przy próbie debugu:

Unhandled exception at 0x76ceb727 in VCMI_client.exe: Microsoft C++ exception: std::basic_string<char,std::char_traits<char>,std::allocator<char> > at memory location 0x0042ee30..

Log debuga:

'VCMI_client.exe': Loaded 'D:\VCMI\trunk\VCMI_client.exe', Symbols loaded.
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\ntdll.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\kernel32.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\KernelBase.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'D:\VCMI\trunk\SDL.dll', Binary was not built with debug information.
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\winmm.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\msvcrt.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\user32.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\gdi32.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\lpk.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\usp10.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\advapi32.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\sechost.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\rpcrt4.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\sspicli.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\cryptbase.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'D:\VCMI\trunk\zlib1.dll', Binary was not built with debug information.
'VCMI_client.exe': Loaded 'D:\VCMI\trunk\SDL_image.dll', Binary was not built with debug information.
'VCMI_client.exe': Loaded 'D:\VCMI\trunk\SDL_ttf.dll', Binary was not built with debug information.
'VCMI_client.exe': Loaded 'D:\VCMI\trunk\SDL_mixer.dll', Binary was not built with debug information.
'VCMI_client.exe': Loaded 'D:\VCMI\trunk\VCMI_lib.dll', Symbols loaded.
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\msvcp100d.dll', Symbols loaded.
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\msvcr100d.dll', Symbols loaded.
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\dbghelp.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\ws2_32.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\nsi.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\ole32.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\oleaut32.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\apphelp.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\AppPatch\AcLayers.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\shell32.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\shlwapi.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\userenv.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\profapi.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\winspool.drv', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\mpr.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\imm32.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\msctf.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\uxtheme.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\dwmapi.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\KBDUS.DLL', Cannot find or open the PDB file
'VCMI_client.exe': Unloaded 'C:\Windows\SysWOW64\KBDUS.DLL'
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\KBDPL1.DLL', Cannot find or open the PDB file
'VCMI_client.exe': Unloaded 'C:\Windows\SysWOW64\KBDPL1.DLL'
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\dsound.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\powrprof.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\setupapi.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\cfgmgr32.dll', Cannot find or open the PDB file
'VCMI_client.exe': Loaded 'C:\Windows\SysWOW64\devobj.dll', Cannot find or open the PDB file
First-chance exception at 0x76ceb727 in VCMI_client.exe: Microsoft C++ exception: std::basic_string<char,std::char_traits<char>,std::allocator<char> > at memory location 0x0042ee30..
Unhandled exception at 0x76ceb727 in VCMI_client.exe: Microsoft C++ exception: std::basic_string<char,std::char_traits<char>,std::allocator<char> > at memory location 0x0042ee30..
First-chance exception at 0x76ceb727 in VCMI_client.exe: Microsoft C++ exception: std::basic_string<char,std::char_traits<char>,std::allocator<char> > at memory location 0x0042ee24..
Unhandled exception at 0x76ceb727 in VCMI_client.exe: Microsoft C++ exception: std::basic_string<char,std::char_traits<char>,std::allocator<char> > at memory location 0x0042ee24..
First-chance exception at 0x76ceb727 in VCMI_client.exe: Microsoft C++ exception: std::basic_string<char,std::char_traits<char>,std::allocator<char> > at memory location 0x0042ee24..
Unhandled exception at 0x76ceb727 in VCMI_client.exe: Microsoft C++ exception: std::basic_string<char,std::char_traits<char>,std::allocator<char> > at memory location 0x0042ee24..
The program '[5412] VCMI_client.exe: Native' has exited with code -1073741510 (0xc000013a).

Ktoś ma jakieś sugestie?? Jak odwalam głupotę jakąś to sory z góry :wink:

Oho, widzę, że szykuje się nam kolejny deweloper! :slight_smile:

Zasadniczo log debugera jest dla mnie bezużyteczny. Log generowany normalnie przez VCMI pozostaje cennym źródłem informacji o tym, co się działo, natomiast gdy uruchamiasz VCMI przez debugger, to zyskujesz dostęp do kluczowej informacji: stosu wywołań — można dokładnie dzięki temu określić, gdzie nastąpił crash i skąd tam się wzięliśmy.

Powininieś mieć gdzieś panel „Call Stack” (a jeśli nie: Debug -> Windows -> Call Stack) — gdy VCMI się wywali i debuger to złapie, będziesz miał tam stos wywołań do problematycznej instrukcji. Możesz się przez niego przeklikać, badając konteksty kolejnych wywołań, które wywiodły program na manowce. (Albo po prostu przekopiować całość zawartości i tu wkleić.)

Z typowych błędów… 99%, że brakuje jakichś plików gry w lokalizacji, w której uruchamiasz VCMI. W projekcie klienta sprawdź Debugging -> Working Directory oraz General -> Output Directory. Najprościej jest budować do folderu z solucją i niech on też będzie fodlerem roboczym. (Na SVN-ie pliki projektu tak powinny być domyślnie skonfigurowane) Wtedy jednak musisz do fodleru z solucją przekopiowac także wszystkie pliki gry.
Ale nie wykluczam, że to coś ciekawszego. :wink: Daj znać, co Ci wyszło z tych moich rad. :slight_smile:

[Domniemywam, że odpalasz toto „po bożemu”, czyli Start Debugging aka F5?]

Dobrze domniemywasz, odpalam “po bożemu” :smiley:
Wiem na pewno (99 % :wink: ) że nie chodzi o brakujące pliki, próbowałem “toto” odpalać i z folderu z solucją po ówczesnym dograniu tam potrzebnych plików (zgodnie z tym co na wiki), i po podmianie skompilowanych plików za pliki VCMI z ostatniego wydania. W obu przypadkach oczywiście ten sam ZONK.

Call stack:

 	KernelBase.dll!76ceb727() 	
 	[Frames below may be incorrect and/or missing, no symbols loaded for KernelBase.dll]	
 	KernelBase.dll!76ceb727() 	
 	msvcr100d.dll!_CxxThrowException(void * pExceptionObject, const _s__ThrowInfo * pThrowInfo)  Line 157	C++
>	VCMI_client.exe!checkForError(bool throwing)  Line 48	C++
 	VCMI_client.exe!DLLHandler::Instantiate(const char * filename)  Line 70 + 0x7 bytes	C++
 	VCMI_client.exe!CSmackPlayer::CSmackPlayer()  Line 281	C++
 	VCMI_client.exe!CVideoPlayer::CVideoPlayer()  Line 403 + 0x5e bytes	C++
 	VCMI_client.exe!wmain(int argc, wchar_t * * argv)  Line 261 + 0x2b bytes	C++
 	VCMI_client.exe!__tmainCRTStartup()  Line 552 + 0x19 bytes	C
 	VCMI_client.exe!wmainCRTStartup()  Line 371	C
 	kernel32.dll!769d33ca() 	
 	ntdll.dll!77539ed2() 	
 	ntdll.dll!77539ea5() 	

Czyli wnioskuję (jeśli dobrze wyczytałem cokolwiek z kodu) że problem leży jednak gdzieś w plikach. Jakby brakowało jakichś bibliotek, nie pochodzących bezpośrednio z VCMI (???). Wydaje mi się to przynajmniej odrobinkę dziwne.

EDIT:
Tutaj jeszcze log clienta zdający się potwierdzać problem z jakimś dll-em:

Creating console and logfile: 2
Loading settings: 527
VCMI 0.85b (client)
New screen flags: 0
	Initializing screen: 599
Failed loading smackw32.dll
Error 126 encountered!
Error: Nie można odnaleźć określonego modułu.


Failed to find _SmackNextFrame@4 in smackw32.dll
Error 127 encountered!
Error: Nie można odnaleźć określonej procedury.


Failed to find _SmackWait@4 in smackw32.dll
Error 127 encountered!
Error: Nie można odnaleźć określonej procedury.


Failed to find _SmackDoFrame@4 in smackw32.dll
Error 127 encountered!
Error: Nie można odnaleźć określonej procedury.


Failed to find _SmackToBuffer@28 in smackw32.dll
Error 127 encountered!
Error: Nie można odnaleźć określonej procedury.


Failed to find _SmackOpen@12 in smackw32.dll
Error 127 encountered!
Error: Nie można odnaleźć określonej procedury.


Failed to find _SmackSoundOnOff@8 in smackw32.dll
Error 127 encountered!
Error: Nie można odnaleźć określonej procedury.


Failed to find _SmackClose@4 in smackw32.dll
Error 127 encountered!
Error: Nie można odnaleźć określonej procedury.


Failed to find _SmackVolumePan@16 in smackw32.dll
Error 127 encountered!
Error: Nie można odnaleźć określonej procedury.


Failed loading BINKW32.DLL
Error 126 encountered!
Error: Nie można odnaleźć określonego modułu.


Failed to find _BinkOpen@8 in BINKW32.DLL
Error 127 encountered!
Error: Nie można odnaleźć określonej procedury.


Failed to find _BinkSetSoundSystem@8 in BINKW32.DLL
Error 127 encountered!
Error: Nie można odnaleźć określonej procedury.


Failed to find _BinkNextFrame@4 in BINKW32.DLL
Error 127 encountered!
Error: Nie można odnaleźć określonej procedury.


Failed to find _BinkDoFrame@4 in BINKW32.DLL
Error 127 encountered!
Error: Nie można odnaleźć określonej procedury.


Failed to find _BinkCopyToBuffer@28 in BINKW32.DLL
Error 127 encountered!
Error: Nie można odnaleźć określonej procedury.


Failed to find _BinkWait@4 in BINKW32.DLL
Error 127 encountered!
Error: Nie można odnaleźć określonej procedury.


Failed to find _BinkClose@4 in BINKW32.DLL
Error 127 encountered!
Error: Nie można odnaleźć określonej procedury.


./Data/H3ab_ahd.vid doesn't contain needed data!
	Initializing video: 343700
	Initializing minors: 0

Lista potrzebnych plików z wiki jest trochę niekompletna. W working directory klienta (projekt VCMI_Client -> Properties -> Debugging -> Working directory) powinny być jeszcze na pewno dllki do odtwarzania wideo (smackw32.dll, binkw32.dll).

Swoją drogą komunikaty o tym mówią — “Failed loading smackw32.dll”, “Failed loading BINKW32.DLL”, oba skopiowane z twojego loga.

Ok, sprawdzę, zdam raport :wink:

EDIT:
Rzeczywiście, “pacjentowi” polepszyło się po dodaniu tych bibliotek, aczkolwiek nadal otrzymuję błąd związany najprawdopodobniej z typem zmiennej (?). Zaraz dorzucę do posta loga…

EDIT2:
Call stack:

>	msvcr100d.dll!_heap_alloc_dbg_impl(unsigned int nSize, int nBlockUse, const char * szFileName, int nLine, int * errno_tmp)  Line 415 + 0x1e bytes	C++
 	msvcr100d.dll!_nh_malloc_dbg_impl(unsigned int nSize, int nhFlag, int nBlockUse, const char * szFileName, int nLine, int * errno_tmp)  Line 239 + 0x19 bytes	C++
 	msvcr100d.dll!_nh_malloc_dbg(unsigned int nSize, int nhFlag, int nBlockUse, const char * szFileName, int nLine)  Line 302 + 0x1d bytes	C++
 	msvcr100d.dll!malloc(unsigned int nSize)  Line 56 + 0x15 bytes	C++
 	msvcr100d.dll!operator new(unsigned int size)  Line 59 + 0x9 bytes	C++
 	VCMI_lib.dll!operator new](unsigned int count)  Line 6 + 0x9 bytes	C++
 	VCMI_lib.dll!CLodHandler::init(std::basic_string<char,std::char_traits<char>,std::allocator<char> > lodFile, std::basic_string<char,std::char_traits<char>,std::allocator<char> > dirName)  Line 276 + 0x1f bytes	C++
 	VCMI_lib.dll!LibClasses::LibClasses()  Line 252	C++
 	VCMI_lib.dll!initDLL(CConsoleHandler * Console, std::basic_ostream<char,std::char_traits<char> > * Logfile)  Line 48 + 0x2b bytes	C++
 	VCMI_client.exe!init()  Line 145 + 0x19 bytes	C++
 	VCMI_client.exe!boost::detail::thread_data<void (__cdecl*)(void)>::run()  Line 61 + 0xa bytes	C++
 	VCMI_client.exe!boost::`anonymous namespace'::thread_start_function(void * param)  Line 172	C++
 	msvcr100d.dll!_callthreadstartex()  Line 314 + 0xf bytes	C
 	msvcr100d.dll!_threadstartex(void * ptd)  Line 297	C
 	kernel32.dll!769d33ca() 	
 	[Frames below may be incorrect and/or missing, no symbols loaded for kernel32.dll]	
 	ntdll.dll!77539ed2() 	
 	ntdll.dll!77539ea5() 	

Co może być nie tak? Coś z kodem, czy znowu u mnie jakieś farmazony porobione :wink: ?

Na moje oko, to brakuje któregoś z plików .lod. Choć w sumie nie powinno wtedy zajść tak daleko — może więc któryś jest uszkodzony? Wywala się na alokacji pamięci z operatora alokowania tablicy new] — pewnie VCMI spróbowało zaalokować jakąś głupią liczbę elementów. Operator new] jest wołany z funkcji init w klasie obsługującej archiwa .lod (CLodHandler).

W stosie wywołań dwa razy kliknij na linię VCMI_lib.dll!CLodHandler::init. Następnie sprawdź o jakie archiwum się pluje — zmienna lodFile powinna przechowywać nazwę feralnego archiwum. Możesz sprawdzić jej zawartość najeżdżając na nią myszą, bądź też przez Debug -> Locals (potem w panelu ctrl+a, ctrl+c i masz wszystkie zmienne lokalne w schowku). Zmienna totalFiles przechowuje liczbę alokowanych elementów (informacji o plikach w archiwum). Też ją sprawdź — bo pewnie ma głupią wartość.

Czy log klienta nie zawiera żadnych użytecznych informacji?

Gdyby log klienta zawierał coś ciekawego, też bym go dołączył :wink:
No ale proszę bardzo, może jestem ślepy :wink:

Creating console and logfile: 2
Loading settings: 529
VCMI 0.85b (client)
New screen flags: 0
	Initializing screen: 577
./Data/H3ab_ahd.vid doesn't contain needed data!
	Initializing video: 14
	Initializing minors: 0
	Loading default system settings: 21
	Initializing sound: 632
Initializing screen and sound handling: 656

Rozumiem że foch dotyczący pliku H3ab_ahd.vid nie ma związku?

EDIT: wiadomo co poniżej dodałem :wink:

+		this	0x0a2871f0 {extMap=[11]((".BMP", FILE_GRAPHICS),(".DEF", FILE_ANIMATION),(".FNT", FILE_FONT),(".H3C", FILE_CAMPAIGN),(".H3M", FILE_MAP),(".JPG", FILE_GRAPHICS),(".MSG", FILE_MASK),(".MSK", FILE_MASK),(".PCX", FILE_GRAPHICS),(".PNG", FILE_GRAPHICS),(".TXT", FILE_TEXT)) LOD={...} totalFiles=3435973836 ...}	CLodHandler * const
+		lodFile	"./Data/H3ab_bmp.lod"	std::basic_string<char,std::char_traits<char>,std::allocator<char> >
+		dirName	"./Data"	std::basic_string<char,std::char_traits<char>,std::allocator<char> >
+		lodEntries	0xcccccccc {filename=0xcccccccc <Bad Ptr> offset=??? uncompressedSize=??? ...}	LodEntry *
+		enddir	{m_imp={...} }	boost::filesystem2::basic_recursive_directory_iterator<boost::filesystem2::basic_path<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,boost::filesystem2::path_traits> >
		temp	3435973836	unsigned int

Chyba widzę problem, zaraz zdam raport czy wypali mój pomysł :wink:

Kurde to działa! Okazało się że rzeczywiście plik .lod był uszkodzony, jego podmiana pomogła!
Dzięki za pomoc, jak będę miał chwilę, to upatrzę sobie na bugtrackerze jakiś błąd i spróbuję zdiagnozować :wink: