2005年3月22日星期二

给Knoppix动态添加中文支持(5)

今日搞定OpenQ和stardict

stardict用到了gnome2的一些动态库,比如libgnome,libbonobo等,而Knoppix不带任何GNOME2的动态库(原来还有,但自从evolution被删除后就没有了),所以比较棘手。

Chinese live extension for Knoppix (knx-clx)- screenshot 7: gaim-openq Chinese live extension for Knoppix (knx-clx)- screenshot 8: stardict

讲一下大致步骤,细节就不说了。


OpenQ

-----
OpenQ下载自Linux公社,是先编译好的gaim-1.0的版本
http://www.linuxfans.org/nuke/modules.php?name=Site_Downloads&op=geninfo&did=2879

1.将插件拷贝到~/.gaim/plugins/
2. 将表情图标(/usr/share/pixmaps/gaim/smileys)拷贝到~/.gaim/smileys

人物图标(/usr/share/pixmaps/gaim/status)不知道应该拷贝到什么地方。
难道要我再用一次mount --bind?


stardict

--------
stardict用到了gnome2的一些动态库,比如libgnome,libbonobo等,而Knoppix不带任何GNOME2的动态库(原来还有,但自从evolution被删除后就没有了),所以比较棘手。

抱着试试看的想法,将用到的依赖库都拉下来了
libbonobo2-0_2.6.2-7_i386.deb
libbonobo2-common_2.6.2-7_i386.deb
libbonoboui2-0_2.6.1-1_i386.deb
libbonoboui2-common_2.6.1-1_all.deb
libgnome2-0_2.6.1.2-2_i386.deb
libgnome2-common_2.6.1.2-2_all.deb
libgnomecanvas2-0_2.6.1.1-2_i386.deb
libgnomecanvas2-common_2.6.1.1-2_all.deb
libgnome-keyring0_0.2.1-3_i386.deb
libgnomeui-0_2.6.1.1cvs-1_i386.deb
libgnomeui-common_2.6.1.1cvs-1_all.deb
libgnomevfs2-0_2.6.2-2_i386.deb
libgnomevfs2-common_2.6.2-2_i386.deb
stardict_2.4.3-5_i386.deb
stardict-common_2.4.3-5_all.deb

全部解压到~/Software/stardict(应为文件比较多,我采用了AppDirs模式, 将相关东西都放在一个目录下。
knx-live-inst发现某个module下面有exes这个文件就会采用AppDirs模式,并且对exes里面列出的程序在~/.dist/bin下创建wrapper)
删除无用的locale, doc, gtk-doc, help等文件
然后
perl -pi -e 's#/usr/share/stardict#./../share/stardict#g' ~/Software/stardict/usr/bin/stardict
再在~/Software/stardict/bin下添加一个wrapper script
#!/bin/sh
DESTDIR=${HOME}/Software/stardict
cd ${DESTDIR}/usr/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${DESTDIR}/usr/lib
exec ./stardict $*
这里跟以前不一样的就是多了LD_LIBRARY_PATH

试了一下,居然成功启动!
(其实stardict没有必要使用gnome库,因为并没有跟桌面其他部分的交互。用gtk库多简单)


03.24 补充: stardict不能修改设置的解决办法


今天发现stardict不能设置为“按下Ctrl键时取词"(其实是什么选项都改不了),这是因为gconf schema没有安装的缘故。因为knoppix上这些目录是不可写的,只要用点变通的办法:

关闭stardict和其他一些可能会用到gconf的程序(在Knoppix上并不多), 然后用gconftool-2 --shutdown停掉gconfd-2(用ps -ef看一下,如果有root启动的gconfd-2就得用root来停掉)
然后编辑~/.gconf/apps/stardict/preferences/dictionary/%gconf.xml(如果没有就创建一个)
按下面的内容修改,补充缺少的项就可以了



Sans 8




没有评论: