Date: Tue, 30 Mar 2004 09:23:20 +0100 From: Matthew Seaman <m.seaman@infracaninophile.co.uk> To: paul beard <paulbeard@mac.com> Cc: FreeBSD-questions <questions@freebsd.org> Subject: Re: port questions (why do I find myself fudging symlinks to make stuff work?) Message-ID: <20040330082320.GA68464@happy-idiot-talk.infracaninophile.co.uk> In-Reply-To: <1D4AE2AB-820A-11D8-802A-000A95BBCCF8@mac.com> References: <1D4AE2AB-820A-11D8-802A-000A95BBCCF8@mac.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--FCuugMFkClbJLl1L Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Mar 29, 2004 at 09:21:34PM -0800, paul beard wrote: > [ please cc me as I am not on the list] >=20 > I have been trying to upgrade cups to 1.1.20 and have been running into= =20 > some problems with libraries not being found (specifically jpeg.9 and=20 > tiff.4). After a few different iterations of pkg_add, portupgrade,=20 > portinstall, and accompanying pkg_delete, pkg_deinstall, make install,=20 > etc., I finally tried symlinking the .so files to the numbered versions= =20 > that don't seem to exist and all seems to be well. >=20 > ln -s /usr/local/lib/libjpeg.a /usr/local/lib/libjpeg.so.9 > ln -s /usr/local/lib/libtiff.a /usr/local/lib/libtiff.so.4 I hope the above wasn't actually what you did. You should have: % ls -l libjpeg* libtiff* -rw-r--r-- 1 root wheel 157600 Mar 19 15:46 libjpeg.a lrwxr-xr-x 1 root wheel 12 Mar 19 15:46 libjpeg.so@ -> libjpeg.s= o.9 -rwxr-xr-x 1 root wheel 135245 Mar 19 15:46 libjpeg.so.9* -r--r--r-- 1 root wheel 374922 Feb 8 10:05 libtiff.a lrwxr-xr-x 1 root wheel 12 Feb 8 10:05 libtiff.so@ -> libtiff.s= o.4 -r--r--r-- 1 root wheel 322199 Feb 8 10:05 libtiff.so.4 Linking a static library (.a) to a shlib (.so.N) will have undesirable effects. > pkgdb doesn't seem to have any problems (I have run it enough times=20 > today), cvsup has done its magic a couple of times. That sounds like what I'd expect, since those commands affect some completely different sets of files to the ones that are giving you problems. A more interesting question would be what output do you get =66rom: % pkg_info -g jpeg-\* tiff-\* The symlinks in question should be known to the packaging system: % pkg_info -L jpeg-\* tiff-\* | grep '.so$' /usr/local/lib/libjpeg.so /usr/local/lib/libtiff.so > I thought portinstall/upgrade -rR would fix any out-of-date ports and=20 > make everything happy? What am I doing wrong to make this libraries not= =20 > get installed? Yes -- there is certainly something going wrong wrong with the way your system is operating: maybe not with the ports/packages system itself, but something took out those symlinks which should have been there. If you reinstall those two packages you should get all of those files and symlinks recreated correctly for you automatically. However, portupgrade won't necessarily pick up that an installed package has been damaged. The ports system will find that, eg. libjpeg.so.9 is missing (which is the file it specifically checks for when testing if the correct dependencies have been installed), and so assume that the whole graphics/jpeg port hasn't been installed. Then when it goes to install the missing dependency, and finds that it isn't actually missing at all. The general answer to this problem is to force a re-install of the damaged packages: # portupgrade -f graphics/jpeg # portupgrade -f graphics/tiff Cheers, Matthew --=20 Dr Matthew J Seaman MA, D.Phil. 26 The Paddocks Savill Way PGP: http://www.infracaninophile.co.uk/pgpkey Marlow Tel: +44 1628 476614 Bucks., SL7 1TH UK --FCuugMFkClbJLl1L Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (FreeBSD) iD8DBQFAaS54dtESqEQa7a0RAvxhAJwJEsZGuEZzz0C+YhJg9LopnhKyggCeKg+K GriCmfz8I8CRQg2QhKXDYT8= =QRdA -----END PGP SIGNATURE----- --FCuugMFkClbJLl1L--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040330082320.GA68464>