原作者:水流心
如果你来到这里,多数情况下是,你已经安装了腾讯公司官方的QQ for Linux,只是在FC7 (Fedora core 7)下却不能正常运行。具体表现为当你双击QQ时没有反应,当你在控制台运行QQ时打印如下错误信息:
./QQ: symbol lookup error: ./QQ: undefined symbol: g_once_init_enter_impl
如果不幸被我猜中,那就直接打开控制台,在超级用户下输入下列命令:
yum --enablerepo=development install gtk-nodoka-engine
安装完毕后,再尝试重新运行QQ,是不是奇迹出现了? 如果是,且有兴趣和时间的话你可以继续看下文,如果不是,你可以将你肚子里的不满和苦水吐在本文的评论里!
腾讯官方对Tencent QQ for Linux对各个主流LInux发行版运行平台要求如下:
SuSE 10.3 或更高;
Ubuntu 7.10 或更高;
Fedora Core 8 或更高;
其中Fedora core 要求最低版本为8。尽管我不信邪,但在一开始在FC7下还真是没运行起来。就一个版本之差,有多大的差别这么玄乎?
其实是一些共享库的版本问题,如gtk2、pango等。所以解决的方案是对这些库进行升级。但是大家都知道在Linux下各个库是有严格的依赖关系的,让人感觉无从下手,幸运的是,上面那个命令可以将这些自动完成。执行这个命令的过程中所进行的操作如下面列表所示, 可以看到对gtk2 、 pango等库进行了升级。
=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
gtk-nodoka-engine i386 0.7.1-1.fc10 development 52 k
Installing for dependencies:
nodoka-filesystem noarch 0.3.90-2.fc10 development 3.3 k
pixman i386 0.11.8-1.fc10 development 117 k
pixman-devel i386 0.11.8-1.fc10 development 10 k
Updating for dependencies:
cairo i386 1.7.4-1.fc10 development 384 k
cairo-devel i386 1.7.4-1.fc10 development 177 k
glib2 i386 2.17.6-1.fc10 development 1.4 M
glib2-devel i386 2.17.6-1.fc10 development 1.3 M
glibc i686 2.8.90-11 development 5.3 M
glibc-common i386 2.8.90-11 development 22 M
glibc-devel i386 2.8.90-11 development 2.1 M
glibc-headers i386 2.8.90-11 development 614 k
gtk2 i386 2.13.6-3.fc10 development 7.2 M
gtk2-devel i386 2.13.6-3.fc10 development 3.4 M
libthai i386 0.1.9-4.fc9 development 187 k
pango i386 1.21.4-1.fc10 development 371 k
pango-devel i386 1.21.4-1.fc10 development 325 k
你可能觉得这个方法有点邪门,因为那个什么gtk-nodoka-engine似乎和QQ没什么联系。这很正常,因为我原本也不是为了装QQ,只是我安装gtk-nodoka-engine的时候看到其对gtk2 、 pango库的升级,突然想到QQ不能运行的原因,因此重新试着运行了一下QQ,结果能运行了!