This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: How do I add missing stdc functions to libstdc++-v3?


On 13 March 2012 00:14, Vaugha Brewchuk wrote:
> I have done a bit more experimenting and have made small progress. ?I tried linking abi_check manually while adding an object including strdup(). ?As a result, my original error message changed from:
>
> /bin/ld: Undefined symbols:
> access(char const*, int)
> ___gxx_personality_sj0
> ___cxa_call_unexpected
> strxfrm(char*, char const*, unsigned long)
> strdup(char*)
> write(int, void const*, unsigned long)
> _strdup
>
> to:
>
> /bin/ld: Undefined symbols:
> access(char const*, int)
> ___gxx_personality_sj0
> ___cxa_call_unexpected
> strxfrm(char*, char const*, unsigned long)
> strdup(char*)
> write(int, void const*, unsigned long)
>
> So the actual linker error relating to missing "_strdup" disappeared, but the error with "strdup(char*)" remained. ?I then edited my system headers to add the missing definitions for access(), strxfrm(), strdup() and write() and rebuilt gcc-3.2.3 from scratch (it takes around 20 hours on a 68040!). ?Subsequent manual linking of abi_check only complained about two missing symbols:
>
> /bin/ld: Undefined symbols:
> ___gxx_personality_sj0
> ___cxa_call_unexpected
>
> Could someone please indicate to me at what point in gcc configuration (or build) the system headers are scanned for presence or absence of functions? ?Where do I tweak the gcc source to be able to define these missing functions without the need for editing my system headers? ?I tried to search the sources and the build directories, but was not successful in finding anything obviously related.
>
> Finally, how and where are the missing two symbols "___gxx_personality_sj0" and "___cxa_call_unexpected" normally generated? ?And again, where in the code do I need to start looking to define a workaround?

They should be defined by gcc itself, in libsupc++.so, you shouldn't
have to do anything.

How are you linking abi_check? What exact command?

I think the problem is how you're linking, not missing features of the OS.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]