网上搜索了一通说linux下翻译软件startdict还不错,于是找到了其源码自行编译安装
这里记录一下遇到的问题及解决办法:
- 进入stardict-3.0.3
- ./configure
出现提示 No package 'zlib' found
但是我系统中已经安装里zlib和zlib-devel为什么还有这个提示呢,经过研究configure在安装过程中会调用pkg-config这个工具来获得stardict的依赖库所在目录,
pkg-config工具会从与某个库(这里是zlib库)对应的后缀为pc的文件(这里是zlib.pc)的中读取这个库所在的目录,一般库在安装的安装包里会有pc文件,但我需要的zlib里没有,于是我从网上下载了一个包含pc的zlib rpm包,把里面的pc文件复制到pkg-config工具默认读取的/usr/lib/pkgconfig下,然后再次./configure 就不会提示No package 'zlib' found了。
pc应该可自行编写,还没空研究,不知道是以什么格式进行编写的,有空研究研究吧。
3. 又有错误提示
checking for intltool >= 0.22... ./configure: line 4456: intltool-update: command not found
configure: error: Your intltool is too old. You need intltool 0.22 or later.
安装高版本intltool
然后继续 ./configure
4. 又有错误提示
checking for ENCHANT... no
configure: error: Enchant library not found or too old. Use --disable-spell to build without spell plugin.
搜索了一下系统中的的enchant为1.6.0,估计是太老了
安装高版本enchant
MD 1.6.0 版本最高了???
算了 enchant 是用来做拼写检查的 不用他了
继续 ./configure --disable-spell
5. MD 还有错误
checking for GUCHARMAP... no
configure: error: Gucharmap library not found or too old. Use --disable-gucharmap to build without gucharmap plugin.
6.继续下载gucharmap 安装 MD 提示
libcairo-gobject.so.2 is needed by gucharmap-3.5.90-1.fc18.i686
libgdk-3.so.0 is needed by gucharmap-3.5.90-1.fc18.i686
libgtk-3.so.0 is needed by gucharmap-3.5.90-1.fc18.i686
libcairo-gobject还好说 libgtk还要依赖atk什么玩意的 atk这个东西又被一大堆东西依赖还不能升级CAO
7. 下载了一大堆yum源,搜了一下居然有stardict.i686安装包,安装。。。成功。。。能用,算了先用上再说吧
另:yum 下载说获取 GPG 密钥失败:[Errno 14] Could not open/read file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-i386
于是
yum install --nogpg stardict.i686
另:yum下载文件的存放位置默认是: /var/cache/yum也可以在 /etc/yum.conf 指定
cachedir=/var/cache/yum #存放目录
keepcache=1 #1为保存 0为不保存
metadata_expire=1800 #过期时间
反正我是没找到!以后再说吧