FreeBSD Ports Problem - Please help
gesbbb at yahoo.com
Fri Feb 12 11:25:19 UTC 2010
On Fri, 12 Feb 2010 08:51:54 +0000
Matthew Seaman <m.seaman at black-earth.co.uk> articulated:
> On 12/02/2010 04:22, M M wrote:
> > I followed the FreeBSD guidebook and tried to install the ports
> > 'graphics/sane-backends' and 'graphics/sane-frontends', but when I
> > did this, FreeBSD told me I needed the latest installation of
> > graphics/jpeg (which happened to be jpeg-8, and I only had jpeg-7
> > installed on my machine).
> > So If I remember correctly, I ended up using *Portupgrade* for this
> > process. I believe I ran 'Portupgrade -ai' which took quite a long
> > time. Portupgrade worked great or whatever Port updating command I
> > ran did a wonderful job....it updated the graphics/jpeg port on my
> > machine.
> The root of the problem you're seeing is due to the change in the
> libjpeg.so ABI version: libjpeg.so.10 is installed by jpeg-8, but most
> of your apps want to link against libjpeg.so.9 installed by jpeg-7.
> Rebuilding all out of date ports (via portupgrade -a) should have been
> the correct action to fix that. However, some problems with the
> update were discovered and subsequently fixed. Have you seen this
> entry from /usr/ports/UPDATING?
> AFFECTS: users of qt 3 and kde 3
> AUTHOR: itetcu at FreeBSD.org
> When building qt33 and kdelibs3 (at least), while they are
> installed, because
> of -L/usr/local/lib being passed too soon, the currently installed
> libs are
> used instead of the ones from the build. This makes the build fail
> if you updated any of the libs this qt / kde libs are linked against
> (like libjpeg).
> For the moment the workaround, when you get to this, is to move the
> old lib
> out of the way, e.g.:
> mv /usr/local/lib/libqt-mt.so /usr/local/lib/libqt-mt.so.old && \
> cd /usr/ports/x11-toolkits/qt33/ && make && \
> mv /usr/local/lib/libqt-mt.so.old /usr/local/lib/libqt-mt.so && \
> portmaster -C x11-toolkits/qt33
> (or portupgrade -w qt-33\*), etc.
> I suggest the best thing to try first is: update your ports tree to
> the latest using csup(1) or portsnap(8) or however you'ld usually do
> Forcibly delete whatever libjpeg you have installed, and then
> reinstall jpeg-8:
> # pkg_delete -f jpeg-\* (This will give you alarming warning
> messages, which you can ignore)
> # cd /usr/ports/graphics/jpeg
> # make install
> # pkgdb -F
> Apply the advice above to move the incorrectly linked shlibs out of
> the way and rebuild them properly. This might make things work again.
> If it doesn't try and identify any binaries in /usr/local/bin that
> link against missing shlibs and re-install the ports that supply them.
> Do that by running ldd(1) against the apps. Eg. like this:
> % ldd /usr/local/bin/psi
> libz.so.5 => /lib/libz.so.5 (0x285ff000)
> libXss.so.1 => /usr/local/lib/libXss.so.1 (0x28611000)
> libaspell.so.16 => /usr/local/lib/libaspell.so.16 (0x28614000)
> libQtDBus.so.4 => /usr/local/lib/qt4/libQtDBus.so.4
> (0x286cc000) [... etc ...]
> What you're looking for are lines that say 'libfoo => not found (0x0)'
> For any such, work out what port supplies that application, and
> reinstall it:
> # pkg_which /usr/local/bin/psi
> # portupgrade -f `pkg_which /usr/local/bin/psi`
> That's going to be long-winded and tedious, but should still be a bit
> quicker than force-reinstalling everything that depends on jpeg, kde
> and qt.
> > Any advice would be greatly appreciated. At this point I am waiving
> > the white flag and I would love to just get back to my original
> > configuration and forget about installing the image scanner. Above
> > all else, I am just trying to avoid a total reinstall of FreeBSD
> > 8.0.
> There's no need to go that far. If you want to take a nuke-and-repave
> approach, you can do it by deleting and reinstalling just the affected
> ports. In extremis, you could do something like this:
> * Make a note of all the ports you have installed already that
> depend on libjpeg:
> % pkg_info -Rx jpeg > ports-I-want-installed
> * Blow away libjpeg and everything that links against it:
> # pkg_deinstall -fr graphics/jpeg
> * Reinstall what you want from ports-I-want-installed. If you
> choose the important leaf ports first (the ones that provide the
> apps you actually use) then most of the ports on that list will
> get automatically reinstalled as dependencies.
I have been experiencing a similar problem. I cannot locate
libjpeg.so.10 on my system after the update. I do have this version
$ locate libjpeg.so.11
however, nothing wants to link against it.
gesbbb at yahoo.com
I'm for bringing back the birch, but only for consenting adults.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 488 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20100212/9dd6f851/signature.pgp
More information about the freebsd-ports