PDA

View Full Version : Shared object "libjpeg.so.10" not found


SeaHag
February 10th, 2010, 20:18
Getting this message trying to upgrade amarok using portmaster.


/libexec/ld-elf.so.1: Shared object "libjpeg.so.10" not found, required by "libkdefx.so.6"


Other ports getting the same error. How can I fix it?

I did portmaster -a to upgrade all ports as the handbook suggests. Now getting this error. Also tried workaround in the UPGRADING for jpeg-8.

FreeBSD 8.0

fronclynne
February 10th, 2010, 20:30
From /usr/ports/UPDATING:
20100205:
AFFECTS: users of qt 3 and kde 3
AUTHOR: itetcu@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.

So I would suppose s/qt-mt.so/kdefx.so/g

Then again, I just deinstalled all of the qt dependent stuff and reinstalled it from scratch (since portupgrade/portmaster do that in essence, it didn't seem like a lot of extra steps to me), that way it doesn't pick up the old libs because none of them exist.



& if DutchDaemon reads this, it should probably be moved to the ports sexion of the forum.

SeaHag
February 10th, 2010, 21:50
I did that workaround but still I get the error when I try to install x11/kdelibs3.


So I would suppose s/qt-mt.so/kdefx.so/g


What does that mean?

SeaHag
February 11th, 2010, 01:17
I can't get this to work. Can anyone help?

sixtydoses
February 11th, 2010, 01:42
So I would suppose s/qt-mt.so/kdefx.so/g

What does that mean?

That means substitute qt-mt.so with kdefx.so, globally (all).

It's a sed command.

SeaHag
February 11th, 2010, 02:57
When I go to /usr/ports/x11/kdelibs3 and type make install clean I get this error;


/libexec/ld-elf.so.1: Shared object "libjpeg.so.10" not found, required by "libkdefx.so.6"


What can I do to fix it?

jb_fvwm2
February 11th, 2010, 03:20
locate libkdefx | grep 6 | grep so
# then...
pkg_which [path] libkdefx.so.6
then rebuild the dependencies...

SeaHag
February 11th, 2010, 03:32
When I do this;


locate libkdefx | grep 6 | grep so


I get this;

locate: database too small: /var/db/locate.database


Actually the file is zero bytes.

fronclynne
February 11th, 2010, 04:13
If you want to just run (as root, obviously) periodic weekly, which, as part of its run will rebuild both your locate and your whatis databases.

To the larger question, mv /usr/local/lib/libkdefx.so.6 /usr/local/lib/libkdefx.so.6.old
then build but don't install your stuff like: cd /usr/ports/x11/kdelibs3 && make, and once it has successfully built (or given you a new fun error, which you can ask about here) move the old library back to its original place and do your make install, etc etc.

And, again, as I pointed out: you can of course, deinstall all of the kde & qt stuff (pkg_delete (these links make me miss having to type "QV") works well enough and is part of the base system) and then install it afresh via ports.

Good luck.

SeaHag
February 11th, 2010, 06:51
To the larger question, mv /usr/local/lib/libkdefx.so.6 /usr/local/lib/libkdefx.so.6.old


How do you know to mv libkdefx.so.6 and not the link libkdefx.so like for the qt33 example? I have two systems with the problem. One of them didn't work by mv libkdefx.so.6 so I used mv libkdefx.so instead. The other one did work with mv libkdefx.so.6 (?)

then build but don't install your stuff like: cd /usr/ports/x11/kdelibs3 && make, and once it has successfully built (or given you a new fun error, which you can ask about here) move the old library back to its original place and do your make install, etc etc.


It did build but when I tried to make install clean it said an older version of kdelibs3 was alreay installed (both systems). I don't understand that because pkg_delete said it wasn't installed but I'm running portmaster x11/kdelibs3 to upgrade it.

And, again, as I pointed out: you can of course, deinstall all of the kde & qt stuff (pkg_delete (these links make me miss having to type "QV") works well enough and is part of the base system) and then install it afresh via ports.


I couldn't do that. When I tried to deinstall it with pkg_delete, it said it was not installed. When I tried to install it I got the error above about libjpeg.so.10 not found. So I couldn't do that.

It's running portmaster x11/kdelibs3 now, I'll let you know how it turns out.

fronclynne
February 11th, 2010, 07:34
How do you know to mv libkdefx.so.6 and not the link libkdefx.so like for the qt33 example? I have two systems with the problem. One of them didn't work by mv libkdefx.so.6 so I used mv libkdefx.so instead. The other one did work with mv libkdefx.so.6 (?)

Oh, honestly I don't. It was what we bicyclists refer to as a WAG (http://www.netlingo.com/word/wag.php). I probably would have moved/deleted both.

SeaHag
February 11th, 2010, 08:12
kdelibs3 installed finally but Amarok still won't install. Gets this error;


===> Verifying install for sgutils.1 in /usr/ports/sysutils/sg3_utils
===> Returning to build of libgpod-0.7.2_1
Error: shared library "sgutils.1" does not exist
*** Error code 1


Since it's not installed I can't use portmaster to upgrade it since that only works on already installed ports right? Any ideas how to fix this one?

Also when I try to run kate I still get the error;


# kate
/libexec/ld-elf.so.1: Shared object "libjpeg.so.10" not found, required by "kate"