问题描述
我正在使用 ubuntu 11.10 64 位,\nskype 正在运行但是在运行 sudo apt-get autoremove
之后 skype 正在抛出
\\n
skype: error while loading shared libraries: libXss.so.1: cannot open shared object file: No such file or directory
\\n
我怎样才能解决这个问题?
最佳思路
看起来你缺少一个库文件。程序 apt-file
可用于查找哪个包提供了某个文件。 ( dpkg -S
也这样做,但不适用于未安装的包)
apt-file search libXss.so
产量:
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
您需要为该库安装 libxss1
包。如果您运行的是 32 位版本的 Skype,则需要安装 ia32-libs
而不是 libxss1
。
次佳思路
为我工作:
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
来自:https://bugs.launchpad.net/ubuntu/+source/ia32-libs/+bug/830440
第三种思路
对于以后的 64 位 Ubuntu 版本
$ 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
所以你必须安装 32 位版本的 libxss1
库文件(即 libxss1:i386
),因为没有 64 位版本的 Skype。 32 位 Skype 必须需要 32 位库文件。所以安装 32 位版本的 libxss1
包将解决你的问题。
sudo dpkg --add-architecture i386
sudo apt-get install libxss1:i386