Date: Tue, 25 Apr 2006 09:42:44 +0930 From: Ian Moore <no-spam@swiftdsl.com.au> To: freebsd-questions@freebsd.org Subject: Re: A portupgrade question Message-ID: <200604250944.21866.no-spam@swiftdsl.com.au> In-Reply-To: <444CDFFF.5020401@infracaninophile.co.uk> References: <200604242043.25020.no-spam@swiftdsl.com.au> <444CDFFF.5020401@infracaninophile.co.uk>
next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart2333369.YFmATRHp5M Content-Type: text/plain; charset="cp 850" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On Monday 24 April 2006 23:56, Matthew Seaman wrote: > Ian Moore wrote: > > Hi, I've got a question about portupgrade and something that's happened > > with it a couple of times now. The last 2 times libgda has been upgrade= d, > > I've run portupgrade -a to upgrade a bunch of ports, including libgda. > > > > The libgda upgrade has caused a re-install of mysql-client-4, but when > > portupgrade has tried to install mysql-client, it's failed because > > mysql-client is already installed. > > > > The workaround for this is simple enough, delete mysql-client and then > > run portupgrade again, but I'm wondering why this situation occurs - > > portupgrade should see that mysql-client is already installed and not t= ry > > to install it again (or if it needs upgrading, it should deinstall the > > old version and build & install the new version). > > > > /etc/ports/UPDATING doesn't seem to help, there's no mention of either > > port in it. > > The reason the ports system can't detect that you've already got > mysql-client software installed is because you haven't got > libmysqlclient.so in your loader cache. Try this command -- you should g= et > similar output: > > lack-of-gravitas:~:% ldconfig -r | grep mysqlclient > 441:-lmysqlclient_r.14 =3D> > /usr/local/lib/mysql/libmysqlclient_r.so.14 442:-lmysqlclient.14 =3D> > /usr/local/lib/mysql/libmysqlclient.so.14 Nope, I get no output at all! > > ldconfig(8) needs to be told to scan /usr/local/lib/mysql for shared > libraries, as that's not one of the default directories. This is general= ly > handled through the ldconfig_compat port which installs precisely one fil= e: > > sisyphus:~:% pkg_info -L ldconfig_compat-1.0_7 > Information for ldconfig_compat-1.0_7: > > Files: > //etc/rc.d/ldconfig_compat > Yes, that's what my system shows. > although you can also add /usr/local/lib/mysql to the set of stuff scanned > by ldconfig by modifying variables in /etc/rc.conf (but that's the old and > unfashionable way of doing this...). Re-installing that port and running > > /etc/rc.d/ldconfig_compat start > > should sort out the problem you're seeing. Yes, that sorted things out - libgda installed without trying to re-install= =20 mysql40-client this time. > > Note that mergemaster(1) will ask you to delete that file because it's in > /etc/rc.d and it's not one of the one installed by the system. You shou= ld > resist the suggestion to do that, or put up with various MySQL (and certa= in > other port) related things not working in the way you might expect. I'll remember that one. > > Note too: this is system version number dependant -- recent 6.1-STABLE or > above will have the ldconfig_compat script installed in /usr/local/etc/rc= =2Ed So to sum up, it's a problem with the way the ports system detects wether t= he=20 mysql-client port is installed that caused the problem (I thought it just=20 used the ports database), and/or it's a problem with the mysql-client port= =20 not registering libmysqlclient.so ? Thanks for your help in sorting that out, I knew it was something more than= =20 just not using the recursion switches with portupgrade. Cheers, =2D-=20 Ian gpg key: http://home.swiftdsl.com.au/~imoore/no-spam.asc --nextPart2333369.YFmATRHp5M Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.3 (FreeBSD) iD8DBQBETWnbPUlnmbKkJ6ARAuBOAJ937XJ0wEKWbcHHAnE174kZtK6YsQCfa3JN qsljf9j97tQ6SY0YVlyYW/U= =bz10 -----END PGP SIGNATURE----- --nextPart2333369.YFmATRHp5M--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200604250944.21866.no-spam>