18

I am using ubuntu 11.10 64bit,
skype was working however after running sudo apt-get autoremove skype is throwing

skype: error while loading shared libraries: libXss.so.1: cannot open shared object file: No such file or directory

How can I fix this?

Hailwood
  • 4,927
  • 15
  • 50
  • 74

3 Answers3

20

Looks like you're missing a library file. The program apt-file can be used to find which package provides a certain file. (dpkg -S does this too, but does not work for packages which are not installed)

apt-file search libXss.so yields:

ia32-libs: /usr/lib32/libXss.so
ia32-libs: /usr/lib32/libXss.so.1
ia32-libs: /usr/lib32/libXss.so.1.0.0
libxss-dev: /usr/lib/libXss.so
libxss1: /usr/lib/libXss.so.1
libxss1: /usr/lib/libXss.so.1.0.0
libxss1-dbg: /usr/lib/debug/usr/lib/libXss.so.1.0.0

You need to install the libxss1 package for that library. If you're running the 32-bit version of Skype, ia32-libs needs to be installed instead of libxss1.

Lekensteyn
  • 171,743
  • 65
  • 311
  • 401
  • This doesn't work for me. Skype fails to find 'libsqlite3.so.0'. apt-file reports this is provided by libsqlite3-0 or libsqlite3-0.dbg. "apt-get install libsqlite3-0" reports it's already installed. "sudo ldconfig" does nothing. Skype still fails. – Jonathan Hartley Mar 22 '14 at 21:54
  • @JonathanHartley Try `sudo apt-get install libsqlite3-0:i386` instead as Skype is a 32-bit package. – Lekensteyn Mar 23 '14 at 09:38
15

worked for me:

echo foreign-architecture i386 | sudo tee /etc/dpkg/dpkg.cfg.d/multiarch
sudo apt-get install libxss1:i386 libqtcore4:i386 libqt4-dbus:i386
sudo apt-get install libqtgui4:i386

got from: https://bugs.launchpad.net/ubuntu/+source/ia32-libs/+bug/830440

Jorge Castro
  • 70,934
  • 124
  • 466
  • 653
Diego
  • 151
  • 2
  • This worked for me although I had to run sudo apt-get -f install after the first line and get skype 32-bit from the Skype web-page. – Kristofer Sep 05 '11 at 07:44
5

For later 64 bit Ubuntu versions

$ locate libXss.so.1
/usr/lib/x86_64-linux-gnu/libXss.so.1
/usr/lib/x86_64-linux-gnu/libXss.so.1.0.0
$ dpkg -S libXss.so.1
libxss1:amd64: /usr/lib/x86_64-linux-gnu/libXss.so.1.0.0
libxss1:amd64: /usr/lib/x86_64-linux-gnu/libXss.so.1

So you have to install a 32 bit version of libxss1 library file (ie,libxss1:i386) because there isn't a 64 bit version of skype. 32 bit Skype must need a 32 bit library file. So installing 32 bit version of libxss1 package will solves your problem.

sudo dpkg --add-architecture i386
sudo apt-get install libxss1:i386
Avinash Raj
  • 77,204
  • 56
  • 214
  • 254