4.9 KiB
Introduction
GoldenDict is a feature-rich dictionary lookup program, supporting multiple dictionary formats (StarDict/Babylon/Lingvo/Dictd/AARD/MDict/SDict) and online dictionaries, featuring perfect article rendering with the complete markup, illustrations and other content retained, and allowing you to type in words without any accents or correct case.
Requirements
This code has been run and tested on Windows XP/Vista/7, Ubuntu Linux, Mac OS X.
External Deps
- Make, GCC, Git
- Qt framework. Minimum required version is 5.15
- Qt Creator IDE is recommended for development
- Various libraries on Linux (png, zlib, etc)
- On Mac and Windows all the libraries are already included in the repository
Installing External Deps on Ubuntu Linux for Qt5
sudo apt-get install git pkg-config build-essential qt5-qmake \
libvorbis-dev zlib1g-dev libhunspell-dev x11proto-record-dev \
qtdeclarative5-dev libxtst-dev liblzo2-dev libbz2-dev \
libao-dev libavutil-dev libavformat-dev libtiff5-dev libeb16-dev \
libqt5webkit5-dev libqt5svg5-dev libqt5x11extras5-dev qttools5-dev \
qttools5-dev-tools qtmultimedia5-dev libqt5multimedia5-plugins
How to build
First, clone this repository, e.g.:
git clone git://github.com/goldendict/goldendict.git
And then invoke qmake-qt5
and make
:
cd goldendict && qmake-qt5 && make
make sure that qmake
is from Qt 5 installation. If not, you can try
finding it at a path like /usr/lib/x86_64-linux-gnu/qt5/bin/qmake
.
Alternatively, you might want to load goldendict.pro
file from within Qt Creator, especially on Windows.
Note: libhunspell
version > 1.5.
Building with Chinese conversion support
To add Chinese conversion support you need at first install libopencc-dev package:
sudo apt-get install libopencc-dev
Then pass "CONFIG+=chinese_conversion_support"
to qmake
qmake "CONFIG+=chinese_conversion_support"
Building with Zim dictionaries support
To add Zim and Slob formats support you need at first install lzma-dev and zstd-dev packages:
sudo apt-get install liblzma-dev libzstd-dev
Then pass "CONFIG+=zim_support"
to qmake
qmake "CONFIG+=zim_support"
Building without extra tiff handler
If you have problem building with libtiff5-dev package, you can pass
"CONFIG+=no_extra_tiff_handler"
to qmake
in order to disable extra tiff support
(without such extra support some b/w tiff images will not be displayed):
qmake "CONFIG+=no_extra_tiff_handler"
Building without Epwing format support
If you have problem building with libeb-dev package, you can pass
"CONFIG+=no_epwing_support"
to qmake
in order to disable Epwing format support
qmake "CONFIG+=no_epwing_support"
Building without internal audio players
If you have problem building with FFmpeg/libao (for example, Ubuntu older than 12.04), you can pass
"CONFIG+=no_ffmpeg_player"
to qmake
in order to disable FFmpeg+libao internal audio player back end:
qmake "CONFIG+=no_ffmpeg_player"
If you have problem building with Qt5 Multimedia or experience GStreamer run-time errors (for example, Ubuntu 14.04), you can pass
"CONFIG+=no_qtmultimedia_player"
to qmake
in order to disable Qt Multimedia internal audio player back end:
qmake "CONFIG+=no_qtmultimedia_player"
NB: All additional settings for qmake
that you need must be combined in one qmake
launch, for example:
qmake "CONFIG+=zim_support" "CONFIG+=no_extra_tiff_handler" "CONFIG+=no_ffmpeg_player"
Then, invoke make clean
before make
because the setting change:
make clean && make
Building under Windows with MS Visual Studio
the source code has offered precompile x64 windows libs on winlibs/lib/msvc. you can build your own version either.
To build with Visual Studio. check this how to build with visual studio
Installation
Installation is an optional step since the built binary can be used as-is without installation. But you can properly install via:
make install
NB: Don't do that on Windows!
You can uninstall via:
make uninstall
License
This project is licensed under the GNU GPLv3+ license, a copy of which can be found in the LICENSE.txt
file.
Support
Users looking for support should file an issue in the official GoldenDict issue tracker, or even better: submit a pull request if you have a fix available. General questions should be asked on the official GoldenDict forum.