转载于http://blog.sina.com.cn/s/blog_6f74890d0101dpp4.html

x86_64版本的fedora中打开共享对象文件失败的解决小技巧———以qq for linux 安装为例

第一步,安装完官方的qq for linux 后,运行QQ,提示如下,缺少libgtk-x11-2.0.so.0文件:

[root@pan downloads]# QQ

./QQ: error while loading shared libraries: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory

其实libgtk-x11-2.0.so.0这个文件我们用whereis 命令 可以在 /lib64目录下找到,但我们用的qq for linux 是基于i386版本的,qq for linux程序在搜索共享对象文件时会到/lib下进行搜索,所以我们要做的工作就是把i386的对应安装包装上。

第二步,搜索该共享对象文件所在的包:

[root@pan downloads]# yum provides /*libgtk-x11-2.0.so.0/*

可以看到:

gtk2-2.12.9-5.fc9.i386 : The GIMP ToolKit (GTK+), a library for creating GUIs

: for X

Matched from:

Other       : libgtk-x11-2.0.so.0

Filename    : /usr/lib/libgtk-x11-2.0.so.0

这里我们可以看到libgtk-x11-2.0.so.0是由 gtk2-2.12.9-5.fc9.i386包所提供的。

第三步,安装缺失的i386版本的gtk2-2.12.9-5.fc9.i386包。

先用yum看一下gtk2的源,这里不可以用yumex,yumex中是无法列出i386版 本的包的。

[root@pan downloads]# yum list gtk2

可以看到:

gtk2.x86_64                              2.12.11-1.fc9          installed

Available Packages

gtk2.i386                                2.12.11-1.fc9          updates

接下来安装这个gtk2.i386即可:

[root@pan downloads]# yum -y install gtk2.i386

总结:

以后凡是打开共享对象文件失败,首先用yum找到该共享对象文件的提供者(安装包),然后再 把这个包装上即可。

用这个方法同样能解决安装GoogleEarthLinux.bin时提示的打开共享对象文 件失败问题

04-27 18:18