错误起源于升级系统内核,重新编译过内核之后出了一系列的问题,这里先不细说,也记不得那么多了,这里说的是stardict无法运行的问题。
出错提示为:
stardict: error while loading shared libraries: libexpat.so.0: cannot open shared object file: no such file or directory
因为我的机器是amd64的,所以当用 emerge -p stardict 查看程序状态时,发现被 masked,key word是"amd64",查看系统中libexpat相关文件
locate libexpat*
发现在/usr/lib32和/usr/lib64下都有libexpat文件,不过里面的一个是真正的库文件,还各有两个链接,名字叫做libexpat.so.1和libexpat.so,所以我试着做了一个新的符号链接
ln -s libexpat.so.1 libexpat.so.0
在两个文件夹里都做了这个操作,发现真正起作用的是lib64文件夹内的libexpat.so.0,现在stardict已经可以正常使用了。


于 2013-02-01 18:48:50发表:
最大的原因可能是安装的系统版本不对,AMD芯片的机器需要安装x86_64的版本!i386的适合Intel芯片,虽然i386版本的系统能安装在AMD芯片的机器上,但是可能会出现一些莫名其妙的问题!