You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by Dave Jarvis <dj...@invoqsystems.com> on 2004/06/28 20:14:40 UTC

Static Compile under Mandrake 10

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. djarvis@invoqsystems.com
w. http://www.invoqsystems.com

---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-c-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-c-dev-help@xml.apache.org