Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 31 Aug 1995 10:50:15 -0400 (EDT)
From:      Chuck Robey <chuckr@Glue.umd.edu>
To:        nbc@cs.strath.ac.uk
Cc:        Questions@freebsd.org
Subject:   Re: Shared Library Troubles
Message-ID:  <Pine.SUN.3.91.950831104052.2088B-100000@espresso.eng.umd.edu>
In-Reply-To: <9508311028.AA01250@muir-11.cs.strath.ac.uk>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 31 Aug 1995 nbc@cs.strath.ac.uk wrote:

> 
> Hello all,
> 
> at the risk of sounding incredibly lame, I am, as the subject says, having
> trouble with shared libraries in FreeBSD 2.0.5. The problem is related to
> packages, and appears to manifest itself whenever I attempt to install
> a package that is dependant on something that I have yet to install. When
> this happens, pkg_add claims to not install the package; yet it still
> records an entry in /var/db/pkg/.
> 
> What's this got to do with libraries ? The problem seems to occur when
> I install the packages in the proper order again, even after (manually)
> deleting the botched dependant package. After everything is installed OK,
> I get this error (from a dodgy tcl/tk installation)
> 
> 	ld.so: wish: libtk.so.3.6: Undefined error: 0
> 
> This has happened to me on several occasions, and frankly, I'm baffled.
> Any ideas ? My apologies if this is an obvious thing or is in a man page
> somewhere...

It's not all that bad, I think I can explain.  In current (2.2) there's 
been a new flag added to ldconfig, the -m flag.  Ldconfig writes a file 
to /var/run called ld.so.hints, that tells the system info on finding the 
right shared libraries, and the -m flag (for merge) lets one add the info 
on a single new library.  When you got that error, the system was saying 
that your version of ldconfig didn't know about the -m flag, but the 
package was correctly installed.  You could have gotten past that ld.so 
error return by two methods: rebooting, or (as root) running ldconfig 
again.  All of my libs are in /usr/lib, /usr/local/lib, or 
/usr/X11R6/lib, so before I began running current, I used the line

ldconfig /usr/lib /usr/local/lib /usr/X11R6/lib

to get past that error.  It oughta work for you.  Alternatively, to get 
rid of the error message on installing the port, just go into the 
Makefile for the port, find the line with "ldconfig" on it, and delete it.
You'll still ahve to manually adjust your ldconfig, as I showed above, 
but you won't get those errors on install anymore.

This info is for the ports for 2.0.5R only, because the ones in current 
work far better.  You oughta see what Satoshi's added!

> 
> Neil
> 

----------------------------+-----------------------------------------------
Chuck Robey                 | Interests include any kind of voice or data 
chuckr@eng.umd.edu          | communications topic, C programming, and Unix.
9120 Edmonston Ct #302      |
Greenbelt, MD 20770         | I run Journey2 and n3lxx, both FreeBSD
(301) 220-2114              | version 2.2 current -- and great FUN!
----------------------------+-----------------------------------------------




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.SUN.3.91.950831104052.2088B-100000>