This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: g++-mike-eh8-C test failure
- To: "John David Anglin" <dave at hiauly1 dot hia dot nrc dot ca>
- Subject: Re: g++-mike-eh8-C test failure
- From: Jeffrey A Law <law at cygnus dot com>
- Date: Tue, 02 May 2000 10:31:06 -0600
- cc: jason at cygnus dot com, gcc-patches at gcc dot gnu dot org, egcs-bugs at egcs dot cygnus dot com
- Reply-To: law at cygnus dot com
In message <200004301546.LAA19936@hiauly1.hia.nrc.ca>you write:
> After all this grief with duplicate routines, I decided to change the
> hpux configuration for libstdc++ so that the standard libraries are not
> linked into libstdc++.sl. This resolves the problem.
And just adds a new set of problems. Consider if the library needs something
like __muldi3 -- you won't have it anymore after your change because you're
not linking in libgcc.
Basically you've just exchanged one set of problems for an even worse set
of problems.
You might want to read the thread about a shared libgcc since most of the
issues being discussed in that thread directly apply to the issues you're
trying to resolve.
> Regarding the installed location of libstdc++, there is a problem
> under hpux when both shared and archive libraries are installed. For
> the shared_archive or archive_shared linker preference mechanism to
> work, both the archive and shared libraries must be in the same
> directory. The archive version of libstdc++ is installed in
> the compiler installation director as a link to a versioned archive
> library in ${prefix}/lib (e.g., libstdc++.a.2.10.0). The shared
> version is installed with no versioning in ${prefix}/lib. The
> compiler location is searched first. As a result, the archive
> version is found first and always selected.
>
> My solution is to remove the link to the archive library in the
> compiler directory, version the shared library, and add links in
> ${prefix}/lib to the versioned libraries. For example,
Ultimately, I think we're going to want all the libraries in $prefix/lib
with none in the gcc-lib directory. This is one of the changes necessary
to make a shared libgcc work in a reasonable manner.
jeff