Debasis Ray wrote:
Hi,
I am building the Xalan c code on linux that fails with the error below.
g++ -DLINUX -fPIC -DXALAN_INMEM_MSG_LOADER
-Wl,-rpath,/nanfs02/home/dray/linux/install/icu/lz_linux/lib \
-L/nanfs02/home/dray/linux/install/xerces_icu/lib -lxerces-c
../../../../obj/MsgFileOutputStream.o ../../../../obj/ICUResHandler.o
../../../../obj/InMemHandler.o ../../../../obj/MsgCreator.o
../../../../obj/NLSHandler.o ../../../../obj/SAX2Handler.o -o
../../../../bin/MsgCreator
../../../../obj/MsgFileOutputStream.o(.text+0x6f2): In function
`XalanFileOutputStream::write(char const*, unsigned int)':
: undefined reference to `xercesc_3_0::XMLPlatformUtils::fgMemoryManager'
../../../../obj/MsgFileOutputStream.o(.text+0x6fc): In function
`XalanFileOutputStream::write(char const*, unsigned int)':
: undefined reference to `xercesc_3_0::XMLString::transcode(char const*,
xercesc_3_0::MemoryManager*)'
../../../../obj/MsgFileOutputStream.o(.text+0x71b): In function
`XalanFileOutputStream::write(char const*, unsigned int)':
: undefined reference to `xercesc_3_0::XMLString::release(unsigned
short**, xercesc_3_0::MemoryManager*)'
../../../../obj/MsgFileOutputStream.o(.text+0x742): In function
`XalanFileOutputStream::writeAsASCII(unsigned short const*, unsigned int)':
: undefined reference to `xercesc_3_0::XMLPlatformUtils::fgMemoryManager'
../../../../obj/MsgFileOutputStream.o(.text+0x74c): In function
`XalanFileOutputStream::writeAsASCII(unsigned short const*, unsigned int)':
: undefined reference to `xercesc_3_0::XMLString::transcode(unsigned
short const*, xercesc_3_0::MemoryManager*)'
../../../../obj/MsgFileOutputStream.o(.text+0x76b): In function
`XalanFileOutputStream::writeAsASCII(unsigned short const*, unsigned int)':
: undefined reference to `xercesc_3_0::XMLString::release(char**,
xercesc_3_0::MemoryManager*)'
../../../../obj/ICUResHandler.o(.text+0x402): In function
`ICUResHandler::endElement(unsigned short const*, unsigned short const*,
unsigned short const*)':
: undefined reference to `xercesc_3_0::XMLString::compareString(unsigned
short const*, unsigned short const*)'
../../../../obj/ICUResHandler.o(.text+0x448): In function
`ICUResHandler::startElement(unsigned short const*, unsigned short
const*, unsigned short const*, xercesc_3_0::Attributes const&)':
I have configured using ./runConfigure -p linux -c gcc -x g++ -P
/nanfs02/home/dray/linux/install/xalan_icu/ --enable-static
For what it's worth, you're unlikely to be able to build successfully
with static libraries.
I have some questions:
1. What version of Xalan-C are you using? The only way to build with
Xerces-C 3.0 is to use the latest code from the Subversion repository.
2. How did you build Xerces-C?
3. What Linux distribution and what version of GCC are you using?
4. What output do you get when you run the following command on the
Xerces-C library you built:
nm libxerces-c-3.0.so | grep compareString | c++filt
On my Linux distribution, I get:
0000000000193790 T xercesc_3_0::XMLString::compareString(char const*,
char const*)
0000000000194090 T xercesc_3_0::XMLString::compareString(unsigned short
const*, unsigned short const*)
Dave
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]