startdict 3.0.0 默认编译需要的若干函数库, 版本高于debian 4.0中所带的, 所以编译需要一些额外修改. 由于 stardict 是基于 gtk2.0 的程序, 所以首先确认你安装了 libgtk2.0-dev 包, 接下来:
0) 下载源代码 http://sourceforge.net/project/showfiles.php?group_id=80679&package_id=82452 我们需要的是 stardict-3.0.0.tar.bz2 这个文件. 然后解压缩到一个临时目录, 比如 /tmp/stardict-3.0.0/
1) export PKG_CONFIG=/usr/bin/pkg-config
2) ./configure --disable-espeak --disable-gucharmap --disable-spell --disable-festival
( 因为我的桌面是 xfce, 我自己编译时还加了 一个参数 --disable-gnome-support , 如果增加这个参数, 需要额外修改一个文件, 下面详述).
3) 修改 ./src/dictmanagedlg.cpp 第 1939 行, 把红色部分改成绿色部分.
image = gtk_image_new_from_stock(GTK_STOCK_SELECT_ALL, GTK_ICON_SIZE_MENU);
==>
image = gtk_image_new_from_stock("gtk_select_all", GTK_ICON_SIZE_MENU);
4) 修改 ./src/Makefile , 找到 STARDICT_LIBS= 开始的这一行(很长的一行), 在这行的最后加上 -lgthread-2.0
5) make
6) make install
附注, 如果你在配置时, 添加了 --disable-gnome-support, 需要修改 ./src/prefsdlg.cpp
首先找到
GtkWidget *label = gtk_label_new(_("RealPeopleTTS search path:"));
改成
label = gtk_label_new(_("RealPeopleTTS search path:"));
然后向上二十几行, 找到
void PrefsDlg::setup_dictionary_sound_page()
{
GtkWidget *vbox = prepare_page(GTK_NOTEBOOK(notebook), _("Sound"), GTK_S
TOCK_YES);
GtkWidget *vbox1 = gtk_vbox_new(false, 6);
gtk_box_pack_start(GTK_BOX(vbox),vbox1,false,false, 0);
GtkWidget *check_button;
在这段代码的下面增加一行
GtkWidget *label;