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>