Windows编译星际译王(StarDict)教程

⌚Time: 2022-06-17 22:54:42

👨‍💻Author: Jack Ge

星际译王(StarDict)是利用GTK(GIMP TOOLKIT)开发的国际化的、跨平台的自由的桌面字典软件。它并不包含字典档,使用者须自行下载配合使用。它可以运行于多种不同的平台,如Linux, Microsoft Windows ,FreeBSD及Solaris,并使用GPL授权。

stardict官网:http://stardict-4.sourceforge.net/index_en.php


准备工具:

系统:windows10

源码:stardict-2.4.9.tar.xz:下载地址

Dev-C++:下载地址

pkg-config:https://sourceforge.net/projects/kde-windows/files/archive/pkg-config/

gtk开发环境:gtk+-bundle_2.24.8-20111122_win32.zip:下载地址

gtk运行时环境:gtk2-runtime-2.12.1.exe:下载地址


环境配置:

1.解压stardict-2.4.9.tar.xz到自定义目录。(doc\README.win32可以看到windows下编译stardict的方法)

2.将pkg-config.exe所在目录添加到系统环境变量path中

3.解压gtk+-bundle_2.24.8-20111122_win32.zip到自定义目录。gtk+开发包包含所有编译gtk程序用到的头文件和库文件。找到其中的lib\pkgconfig文件夹,其中是以pc为后缀的文件

对于pc文件格式,比如


prefix=/devel/target/1315da81bb4f4a54ee1f3f8d6181abe2

exec_prefix=${prefix}

libdir=${exec_prefix}/lib

includedir=${prefix}/include



Name: cairo

Description: Multi-platform 2D graphics library

Version: 1.10.2



Requires.private:  gobject-2.0 glib-2.0       fontconfig >= 2.2.95 freetype2 >= 9.7.3  libpng   

Libs: -L${libdir} -lcairo

Libs.private:        -lz -lz      

Cflags: -I${includedir}/cairo

它是能够被pkg-config工具识别的文件,

通过设置环境变量PKG_CONFIG_PATH来让pkg-config能够找到pc文件,使用pkg-config工具得到编译链接时的参数,库文件和头文件目录以及链接到哪些库

添加系统环境变量,并且指定此目录作为变量值

打开cmd,输入以下命令得到编译stardict的附加头文件目录,将输出保存为文本


pkg-config --cflags gtk+-2.0

输入以下命令得到编译stardict的附加库文件目录,将输出保存为文本


pkg-config --libs gtk+-2.0


编译运行

安装devc++并打开,选择编译器版本为32位,因为编译使用的gtk库也是32位,否则会出现不能使用链接库的问题

点击yes

文件,打开项目或文件,找到stardict源码目录的stardict.dev打开

点击项目,项目属性,文件/目录。找到库目录,将pkg-config输出的库文件目录添加进去

同样将pkg-config输出的头文件目录添加进包含文件目录里,点击确定保存

点击工具栏的编译按钮进行编译,编译成功

在src文件夹下可以找到生成的stardict.exe程序。点击后无法直接运行,提示缺少运行库

因为gtk程序执行的是动态编译,因此运行时需要相应动态库的支持

解决办法有两个,在gtk+-bundle_2.24.8-20111122_win32的bin目录下有gtk程序运行时所有依赖的动态库文件,因此将gtk+-bundle_2.24.8-20111122_win32的bin目录加入系统环境变量path中就可以了。

或者,安装gtk2-runtime-2.12.1.exe之后就可以了。

启动时会弹出以下错误

提示找不到图片,将源码目录下的stardict.ico文件拷贝到src/pixmaps目录下。简单粗暴改名成stardict.png就可以了

启动后的画面

src目录下的stardict.exe、pixmaps、sounds就是程序运行需要的文件了。将它们拷贝出来就可以了。


字典文件的使用

词典下载地址:下载地址

首先下载字典文件并解压

在stardict程序目录下创建字典文件夹dic,将解压后的字典文件移动到dic内

之后重启程序,就可以使用新加入的字典了