64位Linux运行skype出错
skype本身只有32位的版本,因此它缺少的库要安装32位版本的。
首先 ldd /usr/bin/skype
可以看到
linux-gate.so.1 => (0x00eab000)
libasound.so.2 => not found
libXv.so.1 => not found
libXss.so.1 => not found
librt.so.1 => /lib/librt.so.1 (0x009ff000)
libQtDBus.so.4 => not found
libQtGui.so.4 => not found
libQtNetwork.so.4 => not found
libQtCore.so.4 => not found
libpthread.so.0 => /lib/libpthread.so.0 (0x007a8000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x006ad000)
libm.so.6 => /lib/libm.so.6 (0x00853000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00230000)
libc.so.6 => /lib/libc.so.6 (0x0024e000)
libdl.so.2 => /lib/libdl.so.2 (0x00110000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x00ada000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x00cf6000)
/lib/ld-linux.so.2 (0x005a7000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x008eb000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x008c5000)
你可以在 /lib64 中找到 libasound.so.2 , 尝试修改 $LD_LIBRARY_PATH, 在 .bashrc 中加入
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib:/usr/lib64:/lib:/lib64
但是运行后会出现
skype: error while loading shared libraries: libasound.so.2: wrong ELF class: ELFCLASS64
就是因为安装的库是64位版本的
参考这个帖子,安装32位的版本即可。
yum search alsa,会找到
alsa-lib.i686
alsa-lib.x86_64
如果直接 yum install alsa-lib 的话,就会安装64位的库,因此要指定库的全名,即 yum install alsa-lib.i686
然后就把 libasound 解决了,剩下的库也按照相同方法解决即可。