unofficial mirror of bug-guile@gnu.org 
 help / color / mirror / Atom feed
* Support for shared libraries is broken under hpux
@ 2003-10-09 19:51 John David Anglin
  2003-11-04 21:32 ` Kevin Ryde
  0 siblings, 1 reply; 3+ messages in thread
From: John David Anglin @ 2003-10-09 19:51 UTC (permalink / raw)


I have found that the change to use `-no-undefined' causes libtool not
to build shared libraries under hpux 10 and 11.  I didn't notice this
in the initial build.  After installation, we have a new set of headers
and archive libraries, but old shared libraries.  This inconsistent
configuration breaks the build of autogen, etc.

The initial problem starts here:

/bin/sh ../libtool --mode=link gcc  -O2 -Wall -Wmissing-prototypes  -s -o libgui
le-ltdl.la -rpath /opt/gnu/lib -version-info 1:0:0 -export-dynamic -no-undefined
 guile-ltdl.lo  -lcrypt -lm 
rm -fr .libs/libguile-ltdl.la .libs/libguile-ltdl.* .libs/libguile-ltdl.*

*** Warning: linker path does not have real file for library -lcrypt.
*** I have the capability to make that library automatically link in when
*** you link to this library.  But I can only do this if you have a
*** shared version of the library, which you do not appear to have
*** because I did check the linker path looking for a file starting
*** with libcrypt and none of the candidates passed a file format test
*** using a file magic. Last file checked: /usr/lib/libcrypt.a
*** The inter-library dependencies that have been dropped here will be
*** automatically added whenever a program is linked with this library
*** or is declared to -dlopen it.

*** Since this library must not contain undefined symbols,
*** because either the platform does not support them or
*** it was explicitly requested with -no-undefined,
*** libtool will only create a static version of it.

On hpux, libcrypt is only available as an archive library.  Thus, it's
not particularly a great idea to linked it into a shared library.  As
a first step, I think the `-no-undefined' option needs to be dropped
in hpux builds.

Dave
-- 
J. David Anglin                                  dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6602)


_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Support for shared libraries is broken under hpux
  2003-10-09 19:51 Support for shared libraries is broken under hpux John David Anglin
@ 2003-11-04 21:32 ` Kevin Ryde
  2003-11-04 21:52   ` John David Anglin
  0 siblings, 1 reply; 3+ messages in thread
From: Kevin Ryde @ 2003-11-04 21:32 UTC (permalink / raw)
  Cc: bug-guile

"John David Anglin" <dave@hiauly1.hia.nrc.ca> writes:
>
> On hpux, libcrypt is only available as an archive library.  Thus, it's
> not particularly a great idea to linked it into a shared library.

Do you mean it can't be used at all from a shared library?  Might have
to exclude support for it in that case.


_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Support for shared libraries is broken under hpux
  2003-11-04 21:32 ` Kevin Ryde
@ 2003-11-04 21:52   ` John David Anglin
  0 siblings, 0 replies; 3+ messages in thread
From: John David Anglin @ 2003-11-04 21:52 UTC (permalink / raw)
  Cc: bug-guile

> "John David Anglin" <dave@hiauly1.hia.nrc.ca> writes:
> >
> > On hpux, libcrypt is only available as an archive library.  Thus, it's
> > not particularly a great idea to linked it into a shared library.
> 
> Do you mean it can't be used at all from a shared library?  Might have
> to exclude support for it in that case.

In general, linking an archive library into a shared library can lead
to problems with duplication of routines and static data.  This is a
problem if you have two libraries, or a library and main code which both
needed to be linked against an archive library.  It can be done if
the visibility of symbols is limited to library.

Looking at libcrypt.a for hpux 10.20, 11.00 and 11.11, it seems to be
essentially empty, so it probably doesn't matter or need to be used.

-bash-2.05b$ nm /usr/lib/libcrypt.a


Symbols from /usr/lib/libcrypt.a[hpux_rel.o]:

Name                    Value   Scope  Type    Subspace

DS$hpux_rel         |1073741824|static|data   |$DATA$
__emptylib          |         0|extern|entry  |$CODE$

Hope that helps.

Dave
-- 
J. David Anglin                                  dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6602)


_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2003-11-04 21:52 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-10-09 19:51 Support for shared libraries is broken under hpux John David Anglin
2003-11-04 21:32 ` Kevin Ryde
2003-11-04 21:52   ` John David Anglin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).