On 4/13/06, Tim Bornholtz <[EMAIL PROTECTED]> wrote:
I've been having problems trying to compile a 32 bit version of
xercex-c 1.6.0 on a s390x (64 bit) linux environment.
I can compile it as a 64 bit shared library just fine.
I have CFLAGS=-m31 and CXXFLAGS=-m31 in the compile statement.
All of the c++ files compile fine but when it goes to link them into
the shared object I get many errors like this:
/usr/lib64/gcc-lib/s390x-suse-linux/3.3.3/../../../../s390x-suse-linux/bin/ld:
Warning: size of symbol
`xercesc_2_6::RefHashTableOfEnumerator<xercesc_2_6::KVStringPair>::RefHashTableOfEnumerator[in-charge](xercesc_2_6::RefHashTableOf<xercesc_2_6::KVStringPair>*,
bool, xercesc_2_6::MemoryManager*)' changed from 286 in
LINUX/AbstractNumericFacetValidator.o to 290 in
LINUX/BooleanDatatypeValidator.o
and then many like this:
/usr/lib64/gcc-lib/s390x-suse-linux/3.3.3/../../../../s390x-suse-linux/bin/ld:
warning: s390:31-bit architecture of input file
`LINUX/AbstractDOMParser.o' is incompatible with s390:64-bit output
The complete log file from running gmake in the obj directory is at
http://bornholtz.com/uploads/combined.log
Does anyone have any experience compiling a 32 bit shared library on
s390x environment? This is on SuSE 9.
BTW, I'm able to compile and link a 32 bit version of log4cpp so I
know the development environment is set up correctly with the
appropriate biarch tools.
Thanks,
Tim
