xerces-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Pierce" <jpie...@nyc.rr.com>
Subject Bugs and Compile Problems in 1.4.0
Date Sat, 03 Feb 2001 07:27:49 GMT

I just downloaded my first version of Xerces-C 1.4.0 and tried to build it with my favorite
non-standard compiler. I encountered several compile problems that identified what I believe
are errors in the source distribution. Since I am using a non-standard compiler, my make process
is more sensitive to issues that may be hidden by the supported compiler list. If anyone cares,
I am using CodeWarrior 6 on Windows.

Here are the changes that I needed to make to the code to get it to compile.

1. There were some references to strings.h and memory.h in the platform independant source
These includes should be moved to the platform specific build files or the sources moved to
platform specific directories.

1.1 #include <strings.h> should be removed from /src/util/NetAccessors/Socket/UnixHTTPURLInputStream.cpp
1.2 #include <memory.h> should be removed from /src/validators/DTD/CMStateSet.hpp

2. The class name in /src/dom/MemDebug.hpp is in the wrong case on line 77
//class DomMemDebug
class DOMMemDebug

3. . I made the following changes to: /src/dom/NameNodeFilter.hpp
3.1 The /src/dom/NameNodeFilter.hpp includes non-existent file: "NodeFilterImpl.hpp" so I
had to remove it.
3.2 I also had to redefine the class to not include the non-existent superclass interface.

class CDOM_EXPORT NameNodeFilter 
 // : public NodeFilterImpl

4. Many of the .hpp files were missing the required /src/util/XercesDefs.hpp include file
so I had to add it since they may refer to #defines such as XMLPARSER_EXPORT before they have
been defined. The build process should not depend on specifying a precompiled header to be
included in all files.

I needed to add #include <util/XercesDefs.hpp> to the following files:

4.1 /src/framework/XMLPScanToken.hpp
4.2 /src/framework/XMLRecognizer.hpp
4.3 /src/internal/CharTypeTables.hpp
4.4 /src/internal/EndOfEntityException.hpp
4.5 /src/sax/DTDHandler.hpp
4.5 /src/sax/DTDHandler.hpp
4.5 /src/sax/DTDHandler.hpp

5. I needed to explicitly include /util/XMLString.hpp in /src/framework/XMLRefInfo.hpp since
it references XMLString::replicate

6. I made the following changes to: /src/util/Compilers/CodeWarriorDefs.hpp

6.1 Added #define XML_LSTRSUPPORT
6.2 Added #define XERCES_TMPLSINC
6.3 Needed to change the following line so I could precompile the header.

//const char* const Xerces_DLLName = "xerces-c" Xerces_DLLVersionStr;
#define Xerces_DLLName = "xerces-c" + Xerces_DLLVersionStr


View raw message