This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ 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: Problem in compilation using libstdc++


> host/fr_common/unix/portableunix.cpp: In member function `virtual
> SVERROR CUnixProcess::getExitCode(SV_ULONG*)':
> host/fr_common/unix/portableunix.cpp:186: warning: argument of
> negative value ` -1' to `unsigned int'

This is an issue with host/fr_common/unix/portableunix.cpp, not
libstc++. This message warns you of signed/unsigned issues.

> ld: 0711-317 ERROR: Undefined symbol:
> .std::__default_alloc_template<(bool)1, int)0>::allocate(unsigned
> long)
> ld: 0711-317 ERROR: Undefined symbol:
> .std::__default_alloc_template<(bool)1, (int)0>::deallocate(void*,
> unsigned long)
> ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more
> information.

I would expect that these are or should be defined in the libstdc++
binary, and that linking to them should resolve this. You might check
the binary to see if these symbols are actually defined.

However, given that AIX has in the past had issues with weak symbols,
perhaps that is what you are running into here. I don't pretend to
know what is actually going on in your specific case, but perhaps you
can work around it by explicitly instantiating the  template above and
linking it in.

Say, something like:

template class std::__default_alloc_template<1, 0>;

Should produce the required definitions if all else fails.

Sorry I cannot be more helpful. You might want to look for AIX-specific
gcc newsgroups, for for vendor support pages, etc.

-benjamin


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