#5314 closed defect (needsinfo)
Can't build "Debug" configuration
Reported by: | Amplikon | Owned by: | |
---|---|---|---|
Priority: | Nice to Have | Milestone: | |
Component: | Build & Packages | Keywords: | |
Cc: | Patch: |
Description (last modified by )
I checked out everything from https://svn.wildfiregames.com/public/ps/trunk/ and I successfully built "Release" configuration. However "Debug" configuration fails with this output: https://pastebin.com/13seWatv.
Running "dumpbin /exports <directory_path>binaries\system\glooxwrapper_dbg.lib" in cmd indicates that some function are missing from glooxwrapper_dbg.lib (e.g. Client::getID(void)). For me this linker errors dissappeared after running update-workspaces.bat with --build-shared-glooxwrapper which effectively allows to rebuild glooxwrapper_dbg.lib file.
EDIT: Built in Visual Studio 2015 on Windows 10
Change History (8)
comment:1 by , 6 years ago
Description: | modified (diff) |
---|
comment:2 by , 6 years ago
I assume you are on Windows.
In "update-workspaces.bat", in the line:
if not exist ..\workspaces\vc2015\SKIP_PREMAKE_HERE premake5\bin\release\premake5 --outpath="../workspaces/vc2015" --use-shared-glooxwrapper %* vs2015
remove --use-shared-glooxwrapper save and rerun and try again.
comment:3 by , 6 years ago
(Please post the copies on our platform, so they don't disappear)
1>------ Build started: Project: pyrogenesis, Configuration: Debug Win32 ------ 2>------ Build started: Project: test, Configuration: Debug Win32 ------ 1> Creating library ..\..\..\binaries\system\pyrogenesis_dbg.lib and object ..\..\..\binaries\system\pyrogenesis_dbg.exp 2> Creating library ..\..\..\binaries\system\test_dbg.lib and object ..\..\..\binaries\system\test_dbg.exp 2>lobby_dbg.lib(XmppClient.obj) : error LNK2019: unresolved external symbol "public: class glooxwrapper::string const __thiscall glooxwrapper::Client::getID(void)const " (?getID@Client@glooxwrapper@@QBE?BVstring@2@XZ) referenced in function "public: virtual void __thiscall XmppClient::SendIqGetBoardList(void)" (?SendIqGetBoardList@XmppClient@@UAEXXZ) 1>lobby_dbg.lib(XmppClient.obj) : error LNK2019: unresolved external symbol "public: class glooxwrapper::string const __thiscall glooxwrapper::Client::getID(void)const " (?getID@Client@glooxwrapper@@QBE?BVstring@2@XZ) referenced in function "public: virtual void __thiscall XmppClient::SendIqGetBoardList(void)" (?SendIqGetBoardList@XmppClient@@UAEXXZ) 2>lobby_dbg.lib(XmppClient.obj) : error LNK2019: unresolved external symbol "public: class glooxwrapper::string const __thiscall glooxwrapper::IQ::id(void)const " (?id@IQ@glooxwrapper@@QBE?BVstring@2@XZ) referenced in function "protected: virtual bool __thiscall XmppClient::handleIq(class glooxwrapper::IQ const &)" (?handleIq@XmppClient@@MAE_NABVIQ@glooxwrapper@@@Z) 1>lobby_dbg.lib(XmppClient.obj) : error LNK2019: unresolved external symbol "public: class glooxwrapper::string const __thiscall glooxwrapper::IQ::id(void)const " (?id@IQ@glooxwrapper@@QBE?BVstring@2@XZ) referenced in function "protected: virtual bool __thiscall XmppClient::handleIq(class glooxwrapper::IQ const &)" (?handleIq@XmppClient@@MAE_NABVIQ@glooxwrapper@@@Z) 2>lobby_dbg.lib(XmppClient.obj) : error LNK2019: unresolved external symbol "public: class gloox::JID const & __thiscall glooxwrapper::IQ::from(void)const " (?from@IQ@glooxwrapper@@QBEABVJID@gloox@@XZ) referenced in function "protected: virtual bool __thiscall XmppClient::handleIq(class glooxwrapper::IQ const &)" (?handleIq@XmppClient@@MAE_NABVIQ@glooxwrapper@@@Z) 2>..\..\..\binaries\system\test_dbg.exe : fatal error LNK1120: 3 unresolved externals 1>lobby_dbg.lib(XmppClient.obj) : error LNK2019: unresolved external symbol "public: class gloox::JID const & __thiscall glooxwrapper::IQ::from(void)const " (?from@IQ@glooxwrapper@@QBEABVJID@gloox@@XZ) referenced in function "protected: virtual bool __thiscall XmppClient::handleIq(class glooxwrapper::IQ const &)" (?handleIq@XmppClient@@MAE_NABVIQ@glooxwrapper@@@Z) 1>..\..\..\binaries\system\pyrogenesis_dbg.exe : fatal error LNK1120: 3 unresolved externals ========== Build: 0 succeeded, 2 failed, 14 up-to-date, 0 skipped ==========
One could check if it has something to do with recent commits, such as r21719.
comment:4 by , 6 years ago
Removing --use-shared-glooxwrapper in "update-workspace.bat" enforce to rebuild library and build finish successfully.
comment:5 by , 6 years ago
Is the gloox debug build in our repository outdated? One could check using the revision log of these files (also accessible through the browser)
comment:6 by , 6 years ago
Is debug version actually needed and supported?
After successfully building the project, I encounter some problems when debugging. I described this problem in Stackoverflow https://stackoverflow.com/questions/53034949/crt-assertion-problem-inside-crtmemblockheader, but maybe I do something wrong. The library which I talk about is "gloox-1.0d.dll" and I get assertion error inside file "XmppClient.cpp" in constructor:
XmppClient::XmppClient(const std::string& sUsername, const std::string& sPassword, const std::string& sRoom, const std::string& sNick, const int historyRequestSize, bool regOpt) { ... glooxwrapper::JID roomJid(m_room + "@conference." + m_server + "/" + sNick); ... }
My solution was that I rebuilt gloox-1.0d.dll and gloox-1.0.dll so my CRT header are consistent, but does it really actually matter or should I ignore this errors and stop using debug version?
comment:7 by , 5 years ago
Keywords: | debug build removed |
---|---|
Milestone: | Backlog |
Resolution: | → needsinfo |
Status: | new → closed |
Should have been fixed by https://trac.wildfiregames.com/changeset/21969/
Error output: https://code.wildfiregames.com/P134