1

I have Ubuntu 16.04.1 multi-arch. I installed libjpeg62 via synaptic.

% ldconfig -p | grep libjpeg
    libjpegxr.so.0 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libjpegxr.so.0
    libjpeg.so.62 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libjpeg.so.62
    libjpeg.so.9 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libjpeg.so.9
    libjpeg.so.8 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libjpeg.so.8
    libjpeg.so.8 (libc6) => /usr/lib/i386-linux-gnu/libjpeg.so.8
    libjpeg.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libjpeg.so

Here libjpeg.so.62 is located at /user/lib/x86_64-linux-gnu which is in my LD_LIBRARY_PATH. However, typing locate libjpeg.so.62 does not return anything. Why?

Also, when I run teamviewer, it complains that it cannot find libjpeg.so.62 either.

Update: as @oranja points out, after a while locate libjpeg.so.62 works. But teamviewer still cannot detect it.

I don't have admin right i.e. sudo, but can run gksu with my user password. So my plan is to install all dependencies for teamviewer via synaptic, then run the .tar.gz portable version of teamviewer. Any thoughts are welcomed.

Tu Bui
  • 175

1 Answers1

3

It takes some time. The index for locate is stored by default in: /var/lib/mlocate/mlocate.db

And it is updated periodically by the updatedb utility.

If your run updatedb and still locate doesn't find libjpeg.so.62, that's odd and worth checking the configuration.

As for TeamViewer, I suspect that the problem is that you installed the 32bit version of TeamViewer, which looks for 32bit version of its dependencies.

Check this support article: https://www.teamviewer.com/en/help/363-how-do-i-install-teamviewer-on-my-linux-distribution

And this question: Installed Teamviewer using a 64-bit system, but I get a dependency error

Edit:

For TeamViewer 12.0.71510, dpkg -I reports the following dependencies:

libc6 (>= 2.11), libgcc1, libasound2, libdbus-1-3, libexpat1, libfontconfig1, libfreetype6, libjpeg62, libsm6, libxdamage1, libxext6, libxfixes3, libxinerama1, libxrandr2, libxrender1, libxtst6, zlib1g

You can either do a bulk install of all these, or install only those that TeamViewer complains about, but either way, you need to add the :i386 specification. So for example: libc6 becomes libc6:i386 and libjpeg62 becomes libjpeg62:i386. (This is also explained in the answer I've linked above, but the dependency list is outdated there).

If you have to use synaptic, there's an "Architecture" filter that might help to find the i386 versions of those dependencies.

Zanna
  • 72,312
oranja
  • 156