Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Aug 2000 11:31:46 -0400
From:      "Charles N. Owens" <owensc@enc.edu>
To:        hackers@freebsd.org
Subject:   library name conflict problem
Message-ID:  <399810E2.D6FAF14F@enc.edu>
References:  <396CD492.AAF0C38C@enc.edu> <396CE597.A9B2AD5@originative.co.uk>

next in thread | previous in thread | raw e-mail | index | archive | help
Howdy!

I've run into a situation where I need to have two differing
implementations of a library (both are from the ports collection)
installed on the same machine... by default both implementations get
installed with the same name (but in different locations) which causes a
library-name-resolution problem:  the one appearing first in the hints
database is the only one that gets used.  This, of course, breaks
applications that need the other version of the library.

Does anyone have any recommendations about how this should best be
resolved?  Should one of the two libraries be given a different name
altogether (which then would require any ports that need this library to
be adjusted to link to the new name)... or is there a better approach?

This is actually a reposting... I made the mistake of including the word
'perldap' in the original posting which may have pushed it below the
radar of most.  Below is the original text which provides further
background.

Thanks!

Charles Owens


--- Original Posting:

I 've encountered a problem which I could see affecting other LDAP
hackers as
well:  the libldap and libber libraries from openldap and from the
Mozilla
ldap-sdk (${PORTSDIR}/net/ldapsdk) get installed with the same names and
version numbers (but not in the same directories... the mozilla libs get
put
in /usr/local/mozilla/directory/lib).  Thus when running programs
written for
either library set the libraries that actually get invoked are whichever
set
is listed first in the dynamic linker's "hints" database.  This is very
annoying!  What is the appropriate solution?  Some thoughts that come to
mind:

   * change the version number that gets used for either library set...
and
     then change all corresponding ports (if any) to use that verion
number
   * somehow compile stuff (PerLDAP, for example) so it goes directly to
the
     Mozilla libraries, despite the fact that the openldap libs are in
the
     hints database first.  I'm sure this could be accomplished via
static
     linking, but that doesn't seem ideal.

I'm not exactly sure how to accomplish either approach.  Any hints? 
(hah!  a
weak pun!)

Thanks,
--
-------------------------------------------------------------------------
  Charles N. Owens                               Email: owensc@enc.edu
                                            http://www.enc.edu/~owensc
  Network & Systems Administrator
  Information Technology Services  "Outside of a dog, a book is a man's
  Eastern Nazarene College         best friend.  Inside of a dog it's
                                   too dark to read." - Groucho Marx
-------------------------------------------------------------------------


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?399810E2.D6FAF14F>