Visual Studio 2005 Compile Error

For help with anything that CEGUI doesn't offer straight out-of-the-box, e.g.:
- Implementation of new features, such as new Core classes, widgets, WindowRenderers, etc. ...
- Modification of any existing features for specific purposes
- Integration of CEGUI in new engines or frameworks and writing of new plugins (Renderer, Parser, ...) or modules

Moderators: CEGUI MVP, CEGUI Team

User avatar
catalin1976
Just popping in
Just popping in
Posts: 8
Joined: Wed Nov 02, 2005 08:20
Contact:

Visual Studio 2005 Compile Error

Postby catalin1976 » Sun Nov 06, 2005 03:54

Hello!

I have just switched to VS 2005 and I am having trouble compileing the library.

The error appears at the line:
c:\cegui_mk2\include\ceguistring.h(5550) : error C2059: syntax error : '__declspec(dllexport)'

At this moment I have no idea how to correct it. Any suggestions?

Thank you

User avatar
catalin1976
Just popping in
Just popping in
Posts: 8
Joined: Wed Nov 02, 2005 08:20
Contact:

Re: Visual Studio 2005 Compile Error

Postby catalin1976 » Sun Nov 06, 2005 05:22

Ok, the problem is solved!

I have modify the line like this:
std::ostream CEGUIEXPORT &operator<<(std::ostream& s, const String& str);

But now I have 28 liker error:

Code: Select all

CEGUIWin32XMLSelectHack.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static char * __cdecl xercesc_2_7::XMLString::transcode(wchar_t const * const)" (__imp_?transcode@XMLString@xercesc_2_7@@SAPADQB_W@Z) referenced in function __catch$?parseXMLFile@XercesParser@CEGUI@@UAEXAAVXMLHandler@2@ABVString@2@11@Z$0
CEGUIWin32XMLSelectHack.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: wchar_t const * __thiscall xercesc_2_7::XMLException::getMessage(void)const " (__imp_?getMessage@XMLException@xercesc_2_7@@QBEPB_WXZ) referenced in function __catch$?parseXMLFile@XercesParser@CEGUI@@UAEXAAVXMLHandler@2@ABVString@2@11@Z$0
CEGUIWin32XMLSelectHack.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static unsigned int __cdecl xercesc_2_7::XMLString::stringLen(wchar_t const * const)" (__imp_?stringLen@XMLString@xercesc_2_7@@SAIQB_W@Z) referenced in function "public: static class CEGUI::String __cdecl CEGUI::XercesParser::transcodeXmlCharToString(wchar_t const * const)" (?transcodeXmlCharToString@XercesParser@CEGUI@@SA?AVString@2@QB_W@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static void __cdecl xercesc_2_7::XMLString::release(wchar_t * *)" (__imp_?release@XMLString@xercesc_2_7@@SAXPAPA_W@Z) referenced in function __catch$?initialiseSchema@XercesParser@CEGUI@@KAXPAVSAX2XMLReader@xercesc_2_7@@ABVString@2@11@Z$0
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: static wchar_t const * const xercesc_2_7::XMLUni::fgXercesSchemaExternalNoNameSpaceSchemaLocation" (__imp_?fgXercesSchemaExternalNoNameSpaceSchemaLocation@XMLUni@xercesc_2_7@@2QB_WB)
CEGUIWin32XMLSelectHack.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static wchar_t * __cdecl xercesc_2_7::XMLString::transcode(char const * const)" (__imp_?transcode@XMLString@xercesc_2_7@@SAPA_WQBD@Z) referenced in function __catch$?initialiseSchema@XercesParser@CEGUI@@KAXPAVSAX2XMLReader@xercesc_2_7@@ABVString@2@11@Z$0
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: static wchar_t const * const xercesc_2_7::XMLUni::fgXercesUseCachedGrammarInParse" (__imp_?fgXercesUseCachedGrammarInParse@XMLUni@xercesc_2_7@@2QB_WB)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: static wchar_t const * const xercesc_2_7::XMLUni::fgXercesValidationErrorAsFatal" (__imp_?fgXercesValidationErrorAsFatal@XMLUni@xercesc_2_7@@2QB_WB)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: static wchar_t const * const xercesc_2_7::XMLUni::fgSAX2CoreValidation" (__imp_?fgSAX2CoreValidation@XMLUni@xercesc_2_7@@2QB_WB)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: static wchar_t const * const xercesc_2_7::XMLUni::fgXercesSchema" (__imp_?fgXercesSchema@XMLUni@xercesc_2_7@@2QB_WB)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: static wchar_t const * const xercesc_2_7::XMLUni::fgSAX2CoreNameSpaces" (__imp_?fgSAX2CoreNameSpaces@XMLUni@xercesc_2_7@@2QB_WB)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual class xercesc_2_7::InputSource * __thiscall xercesc_2_7::DefaultHandler::resolveEntity(wchar_t const * const,wchar_t const * const)" (?resolveEntity@DefaultHandler@xercesc_2_7@@UAEPAVInputSource@2@QB_W0@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::notationDecl(wchar_t const * const,wchar_t const * const,wchar_t const * const)" (?notationDecl@DefaultHandler@xercesc_2_7@@UAEXQB_W00@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::unparsedEntityDecl(wchar_t const * const,wchar_t const * const,wchar_t const * const,wchar_t const * const)" (?unparsedEntityDecl@DefaultHandler@xercesc_2_7@@UAEXQB_W000@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::characters(wchar_t const * const,unsigned int)" (?characters@DefaultHandler@xercesc_2_7@@UAEXQB_WI@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::ignorableWhitespace(wchar_t const * const,unsigned int)" (?ignorableWhitespace@DefaultHandler@xercesc_2_7@@UAEXQB_WI@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::processingInstruction(wchar_t const * const,wchar_t const * const)" (?processingInstruction@DefaultHandler@xercesc_2_7@@UAEXQB_W0@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::startPrefixMapping(wchar_t const * const,wchar_t const * const)" (?startPrefixMapping@DefaultHandler@xercesc_2_7@@UAEXQB_W0@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::endPrefixMapping(wchar_t const * const)" (?endPrefixMapping@DefaultHandler@xercesc_2_7@@UAEXQB_W@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::skippedEntity(wchar_t const * const)" (?skippedEntity@DefaultHandler@xercesc_2_7@@UAEXQB_W@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::comment(wchar_t const * const,unsigned int)" (?comment@DefaultHandler@xercesc_2_7@@UAEXQB_WI@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::endEntity(wchar_t const * const)" (?endEntity@DefaultHandler@xercesc_2_7@@UAEXQB_W@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::startDTD(wchar_t const * const,wchar_t const * const,wchar_t const * const)" (?startDTD@DefaultHandler@xercesc_2_7@@UAEXQB_W00@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::startEntity(wchar_t const * const)" (?startEntity@DefaultHandler@xercesc_2_7@@UAEXQB_W@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::elementDecl(wchar_t const * const,wchar_t const * const)" (?elementDecl@DefaultHandler@xercesc_2_7@@UAEXQB_W0@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::attributeDecl(wchar_t const * const,wchar_t const * const,wchar_t const * const,wchar_t const * const,wchar_t const * const)" (?attributeDecl@DefaultHandler@xercesc_2_7@@UAEXQB_W0000@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::internalEntityDecl(wchar_t const * const,wchar_t const * const)" (?internalEntityDecl@DefaultHandler@xercesc_2_7@@UAEXQB_W0@Z)
CEGUIWin32XMLSelectHack.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall xercesc_2_7::DefaultHandler::externalEntityDecl(wchar_t const * const,wchar_t const * const,wchar_t const * const)" (?externalEntityDecl@DefaultHandler@xercesc_2_7@@UAEXQB_W00@Z)
..\..\..\..\bin/CEGUIBase_d.dll : fatal error LNK1120: 28 unresolved externals



Is it possible to appear because I don't have the xerces library compiled for VS2005?

User avatar
martignasse
Just can't stay away
Just can't stay away
Posts: 227
Joined: Thu Apr 14, 2005 08:10
Location: Lyon, FRANCE

Re: Visual Studio 2005 Compile Error

Postby martignasse » Sun Nov 06, 2005 10:33

Code: Select all

c:\cegui_mk2\include\ceguistring.h(5550) : error C2059: syntax error : '__declspec(dllexport)'
had the same error after download the CVS 0.4 branch this night (i'm on VC 7.1).

i have looked at previous source and the line is like that :

Code: Select all

std::ostream& operator<<(std::ostream& s, const String& str);
so the question is, what is the correct one ?

Is it possible to appear because I don't have the xerces library compiled for VS2005?
yep, it sound like.

You can always use tinyXML instead by commenting the line 77 in the CEGUIConfig.h file

Code: Select all

#define CEGUI_WITH_XERCES
but you'll lose the xml validation feature of xerces.

User avatar
catalin1976
Just popping in
Just popping in
Posts: 8
Joined: Wed Nov 02, 2005 08:20
Contact:

Re: Visual Studio 2005 Compile Error

Postby catalin1976 » Sun Nov 06, 2005 23:59

Thank you for the idea.

I have downloaded the xercesc 2.7 and recompile in VS2005 and now everything works.

About the line

Code: Select all

std::ostream& operator<<(std::ostream& s, const String& str);


you simply move the & close to the operator and you can compile.

Code: Select all

std::ostream CEGUIEXPORT &operator<<(std::ostream& s, const String& str);


Return to “Modifications / Integrations / Customisations”

Who is online

Users browsing this forum: No registered users and 7 guests