[Gdal-dev] Xerces versions?

Michael P. Gerlek mpg at lizardtech.com
Wed Aug 10 11:57:45 EDT 2005


The nmake.opt file implies that that the GML support in OGR requires
Xerces version 1.7:

  #XERCES_DIR = d:\warmerda\iii\drivers\gml\xerces-c1_7_0-win32
  #XERCES_INCLUDE = -I$(XERCES_DIR)/include
-I$(XERCES_DIR)/include/xercesc
  #XERCES_LIB = $(XERCES_DIR)/lib/xerces-c_1.lib

We're already using xerces 2.6 internally, but if I try to use that
instead of 1.7 I get linker errors of the form:

   gdal.lib(gmlreader.obj) : error LNK2019: unresolved external symbol
"__declspec(dllimport) public: __thiscall
xercesc_2_6::XMLPScanToken::XMLPScanToken(void)"
(__imp_??0XMLPScanToken at xercesc_2_6@@QAE at XZ) referenced in function
"public: __thiscall GMLReader::GMLReader(void)" (??0GMLReader@@QAE at XZ)
   gdal.lib(gmlreader.obj) : error LNK2019: unresolved external symbol
"__declspec(dllimport) public: __thiscall
xercesc_2_6::XMLPScanToken::~XMLPScanToken(void)"
(__imp_??1XMLPScanToken at xercesc_2_6@@QAE at XZ) referenced in function
"public: virtual __thiscall GMLReader::~GMLReader(void)"
(??1GMLReader@@UAE at XZ)
   [...]
   gdal.lib(gmlhandler.obj) : error LNK2019: unresolved external symbol
"__declspec(dllimport) public: virtual __thiscall
xercesc_2_6::DefaultHandler::~DefaultHandler(void)"
(__imp_??1DefaultHandler at xercesc_2_6@@UAE at XZ) referenced in function
"public: virtual __thiscall GMLHandler::~GMLHandler(void)"
(??1GMLHandler@@UAE at XZ)

I'm not sure I understand this.  I could understand the link reasonably
failing with 2.6, but these specific errors seem appear to imply
something missing from the 2.6 library itself.  Weird.  (I did verify
that if I use the 1.7 libs all is well, so I don't *think* it is
anything local to my build environment.)

Suggestions?

-mpg (mpg at lizardtech.com)




More information about the Gdal-dev mailing list