diff options
| author | dje <dje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-08-16 17:24:33 +0000 |
|---|---|---|
| committer | dje <dje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-08-16 17:24:33 +0000 |
| commit | a6dece06c4d88f98c6195d27d76f357e0826f038 (patch) | |
| tree | 98f780a273680027ba44524eaf50a090e3e36622 /gcc | |
| parent | 0bc5749def1ad0dbcedf32e2e822532a3f141eda (diff) | |
| download | ppe42-gcc-a6dece06c4d88f98c6195d27d76f357e0826f038.tar.gz ppe42-gcc-a6dece06c4d88f98c6195d27d76f357e0826f038.zip | |
* doc/install.texi (*-ibm-aix*): Explain AIX shared object versioning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@56380 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
| -rw-r--r-- | gcc/ChangeLog | 6 | ||||
| -rw-r--r-- | gcc/doc/install.texi | 29 |
2 files changed, 34 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c011e156363..118c8f6d37d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -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. diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi index 8f2dbb13769..d9f409351e8 100644 --- a/gcc/doc/install.texi +++ b/gcc/doc/install.texi @@ -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 |

