* doc/install.texi (*-ibm-aix*): Explain AIX shared object versioning.

From-SVN: r56380
This commit is contained in:
David Edelsohn 2002-08-16 13:24:33 -04:00
parent 7aecca3dc9
commit fdf68669ec
2 changed files with 34 additions and 1 deletions

View File

@ -1,4 +1,8 @@
2002-07-30 Andrew Haley <aph@redhat.com>
2002-08-16 David Edelsohn <edelsohn@gnu.org>
* doc/install.texi (*-ibm-aix*): Explain AIX shared object versioning.
2002-08-16 Andrew Haley <aph@redhat.com>
* tree-inline.c: Add includes for Java inliner.
(remap_decl): Don't handle anonymous types for Java.

View File

@ -2337,6 +2337,35 @@ interoperate with GCC@.
Building @file{libstdc++.a} requires a fix for an AIX Assembler bug
APAR IY26685 (AIX 4.3) or APAR IY25528 (AIX 5.1).
@samp{libstdc++} in GCC 3.2 increments the major version number of the
shared object and GCC installation places the @file{libstdc++.a}
shared library in a common location which will overwrite the GCC 3.1
version of the shared library. Applications either need to be
re-linked against the new shared library or the GCC 3.1 version of the
@samp{libstdc++} shared object needs to be available to the AIX
runtime loader. The GCC 3.1 @samp{libstdc++.so.4} shared object can
be installed for runtime dynamic loading using the following steps to
set the @samp{F_LOADONLY} flag in the shared object for @emph{each}
multilib @file{libstdc++.a} installed:
Extract the shared object from each the GCC 3.1 @file{libstdc++.a}
archive:
@example
% ar -x libstdc++.so.4 libstdc++.a
@end example
Enable the @samp{F_LOADONLY} flag so that the shared object will be
available for runtime dynamic loading, but not linking:
@example
% strip -e libstdc++.so.4
@end example
Archive the runtime-only shared object in the GCC 3.2
@file{libstdc++.a} archive:
@example
% ar -q libstdc++.so.4 libstdc++.a
@end example
Linking executables and shared libraries may produce warnings of
duplicate symbols. The assembly files generated by GCC for AIX always
have included multiple symbol definitions for certain global variable