Hello,

I've installed what I think are all the static libraries used by Xerces C++, however I cannot create a static compile for Xerces, and could not find the switches documented either online or within the configuration and Makefile.incl files. Note that I've disabled multithreading for now.

It compiles fine up to the following line:

g++ -DLINUX -static -static-libgcc -fPIC -Wl,-soname,libxerces-c.so.25 -o /usr/local/src/xerces-c-src_2_5_0/lib/libxerces-c.so.25.0 LINUX/AbstractDOMParser.o LINUX/AbstractNumericFacetValidator.o LINUX/AbstractNumericValidator.o LINUX/AbstractStringValidator.o LINUX/AllContentModel.o LINUX/AnySimpleTypeDatatypeValidator.o LINUX/AnyURIDatatypeValidator.o LINUX/ASCIIRangeFactory.o LINUX/AttrImpl.o LINUX/AttrMapImpl.o LINUX/AttrNSImpl.o LINUX/Base64BinaryDatatypeValidator.o LINUX/Base64.o LINUX/BinFileInputStream.o LINUX/BinFileOutputStream.o LINUX/BinInputStream.o LINUX/BinMemInputStream.o LINUX/BinMemOutputStream.o LINUX/BinOutputStream.o LINUX/BitSet.o
... etc.


Then the compile produces the following warnings:

LINUX/UnixHTTPURLInputStream.o(.text+0x594): In function `xercesc_2_5::UnixHTTPURLInputStream::UnixHTTPURLInputStream[not-in-charge](xercesc_2_5::XMLURL const&)':
: warning: Using 'gethostbyaddr' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
LINUX/UnixHTTPURLInputStream.o(.text+0x560): In function `xercesc_2_5::UnixHTTPURLInputStream::UnixHTTPURLInputStream[not-in-charge](xercesc_2_5::XMLURL const&)':
: warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../crt1.o(.text+0x18):


Finally, it gives up with the following failure:

In function `_start':
../sysdeps/i386/elf/start.S:98: undefined reference to `main'
collect2: ld returned 1 exit status
make[1]: *** [/usr/local/src/xerces-c-src_2_5_0/lib/libxerces-c.so.25.0] Error 1
make[1]: Target `ALL' not remade because of errors.
make[1]: Leaving directory `/usr/local/src/xerces-c-src_2_5_0/obj'
make: *** [/usr/local/src/xerces-c-src_2_5_0/lib/libxerces-c.so.25.0] Error 2


Many thanks for any and all ideas on this. (I haven't looked hard, but I couldn't find the file "start.S".)

I have installed the static development libraries for libstdc++ and libc.

Sincerely,
Dave Jarvis
--
Invoq Systems Inc.
t. 250.380.0304
e. [EMAIL PROTECTED]
w. http://www.invoqsystems.com

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to