On Mon, 2004-07-19 at 14:36, Simon Kitching wrote:
> Hi,
> 
> I have built an app using xerces-c as a shared lib on Linux. I'm now
> trying to get it running on AIX 5.1.
> 
> Issue 1: 
> 
> The binary download of xerces-c for AIX appears to have static libs
> (.a), but no shared libs (.so). Is this deliberate, and if so, what is
> the reason?

Hmm..it appears that AIX uses the suffix '.a' for dynamic shared libs.
How nice :-(. Well that issue's solved.

However if I compile code with either g++ or xlC v5, then link against
the xerces-c libs in the prebuilt download, I get link errors. None of
the xerces-c APIs can be found.

Is it possible that g++ and xlC v5 use different name-mangling
algorithms from xlC v6, which the binary xerces download was built with?

> 
> Issue 2:
> 
> When I try to compile from source using gcc/g++ 2.9, I get a link
> problem. I can compile other c/c++ apps successfully on this machine.
> 
> The runConfigure script seems ok:
>    ./runConfigure -p aix -cgcc -xg++ -nfileonly -rpthread
> 
> And the compile seems ok.
> 
> But I get this link error:
> 
> gmake[1]: Entering directory `/home/simon/xerces-c-src_2_5_0/obj'
> 
> Building /home/simon/xerces-c-src_2_5_0/lib/libxerces-c25.0.a
> makeC++SharedLib_r -p 5000   -o
> /home/simon/xerces-c-src_2_5_0/lib/libxerces-c25.0.a
> {lots of .o files}
> -bmap:/home/simon/xerces-c-src_2_5_0/obj/libxerces-c25.0.map 
> -lpthreads  -L/usr/lpp/xlC/lib
> 
> ld: 0711-317 ERROR: Undefined symbol: __pure_virtual
> ld: 0711-317 ERROR: Undefined symbol: .__builtin_new
> ld: 0711-317 ERROR: Undefined symbol: .__eh_alloc
> ld: 0711-317 ERROR: Undefined symbol: .__cp_push_exception
> ld: 0711-317 ERROR: Undefined symbol: .__throw
> ld: 0711-317 ERROR: Undefined symbol: .__rethrow
> ld: 0711-317 ERROR: Undefined symbol: .__cp_pop_exception
> ld: 0711-317 ERROR: Undefined symbol: .__start_cp_handler
> ld: 0711-317 ERROR: Undefined symbol: .__builtin_delete
> ld: 0711-317 ERROR: Undefined symbol: .__rtti_si
> ld: 0711-317 ERROR: Undefined symbol: .__rtti_user
> ld: 0711-317 ERROR: Undefined symbol: .__rtti_class
> ld: 0711-317 ERROR: Undefined symbol: .__builtin_vec_new
> ld: 0711-317 ERROR: Undefined symbol: .__builtin_vec_delete
> ld: 0711-317 ERROR: Undefined symbol: .__uncatch_exception
> ld: 0711-317 ERROR: Undefined symbol: .__eprintf
> ld: 0711-317 ERROR: Undefined symbol: .__tfi
> ld: 0711-317 ERROR: Undefined symbol: .__fixunssfsi
> ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more
> information.
> gmake[1]: *** [/home/simon/xerces-c-src_2_5_0/lib/libxerces-c25.0.a]
> Error 8
> gmake[1]: Target `ALL' not remade because of errors.
> gmake[1]: Leaving directory `/home/simon/xerces-c-src_2_5_0/obj'
> gmake: *** [/home/simon/xerces-c-src_2_5_0/lib/libxerces-c25.0.a] Error
> 2
> 
> It looks rather like libstdc++ is not being found or something. 

I'd still *really* appreciate any suggestions on this.

Regards,

Simon


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

Reply via email to