2022-02-10 05:34:37 +00:00
[![Codacy Badge ](https://api.codacy.com/project/badge/Grade/e507f9bf83bd48f7a5b76f71dfe9f0dd )](https://app.codacy.com/gh/xiaoyifang/goldendict?utm_source=github.com& utm_medium=referral& utm_content=xiaoyifang/goldendict& utm_campaign=Badge_Grade_Settings)
2022-01-31 04:19:24 +00:00
[![Windows ](https://github.com/xiaoyifang/goldendict/actions/workflows/windows.yml/badge.svg )](https://github.com/xiaoyifang/goldendict/actions/workflows/windows.yml) [![Ubuntu ](https://github.com/xiaoyifang/goldendict/actions/workflows/ubuntu.yml/badge.svg )](https://github.com/xiaoyifang/goldendict/actions/workflows/ubuntu.yml)
2022-02-20 03:57:42 +00:00
[![macos ](https://github.com/xiaoyifang/goldendict/actions/workflows/macos.yml/badge.svg )](https://github.com/xiaoyifang/goldendict/actions/workflows/macos.yml)
2022-01-31 04:19:24 +00:00
2013-05-03 20:25:57 +00:00
## Introduction
< b > GoldenDict< / b > 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
2022-02-19 04:03:35 +00:00
This code has been run and tested on Windows 10/11, Ubuntu Linux, Mac OS X.
2013-05-03 20:25:57 +00:00
### External Deps
2013-07-11 20:15:47 +00:00
* Make, GCC, Git
2022-06-24 22:48:55 +00:00
* Qt framework. Minimum required version is 5.15 and support the latest QT version 6.X
2013-05-03 20:25:57 +00:00
* 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
2016-12-19 08:22:59 +00:00
#### 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 \
2019-03-22 13:26:40 +00:00
qtdeclarative5-dev libxtst-dev liblzo2-dev libbz2-dev \
2016-12-19 08:22:59 +00:00
libao-dev libavutil-dev libavformat-dev libtiff5-dev libeb16-dev \
2022-02-19 04:02:39 +00:00
libqt5svg5-dev libqt5x11extras5-dev qttools5-dev \
2022-07-16 08:10:48 +00:00
qttools5-dev-tools qtmultimedia5-dev libqt5multimedia5-plugins libqt5webchannel5-dev qtwebengine5-dev
2022-04-24 15:36:19 +00:00
### Fedora 35
```
2022-09-10 13:38:27 +00:00
sudo dnf install git pkg-config libzstd-devel opencc-devel xz-devel xz-lzma-compat\
2022-04-24 15:36:19 +00:00
libvorbis-devel zlib-devel hunspell-devel lzo-devel bzip2-devel \
libao-devel ffmpeg-devel libtiff-devel eb-devel qt5-qtx11extras-devel libXtst-devel \
2022-09-10 13:04:36 +00:00
libxkbcommon-devel qt5-qtbase qt5-qttools qt5-qtsvg-devl qt5-qtwebengine-devel qt5-qtmultimedia-devl
2022-09-10 13:38:27 +00:00
qmake-qt5 CONFIG+=release CONFIG+=no_extra_tiff_handler CONFIG+=no_epwing_support
2022-09-10 13:04:36 +00:00
make
2022-04-24 15:36:19 +00:00
```
2016-12-19 08:22:59 +00:00
2013-05-03 20:25:57 +00:00
## How to build
First, clone this repository, e.g.:
2022-06-26 11:07:16 +00:00
git clone https://github.com/xiaoyifang/goldendict.git
2013-05-03 20:25:57 +00:00
2022-03-15 12:45:20 +00:00
### Linux
2021-09-24 14:47:23 +00:00
And then invoke `qmake-qt5` and `make` :
2013-05-03 20:25:57 +00:00
2021-09-24 14:47:23 +00:00
cd goldendict & & qmake-qt5 & & make
2013-05-03 20:25:57 +00:00
2022-03-15 12:45:20 +00:00
### macOS
```
2022-03-25 05:04:49 +00:00
brew install qt # or use official offline installer
2022-04-21 02:56:14 +00:00
qmake CONFIG+=release CONFIG+=zim_support CONFIG+=chinese_conversion_support QMAKE_APPLE_DEVICE_ARCHS="x86_64 arm64"
2022-03-15 12:45:20 +00:00
make
make install
```
### Windows
2013-05-03 20:25:57 +00:00
Alternatively, you might want to load `goldendict.pro` file from within Qt Creator, especially on Windows.
2017-07-05 14:58:43 +00:00
2015-10-25 13:54:38 +00:00
### 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"
2014-05-05 14:01:50 +00:00
### Building with Zim dictionaries support
2020-05-27 11:04:49 +00:00
To add Zim and Slob formats support you need at first install lzma-dev and zstd-dev packages:
2014-05-05 14:01:50 +00:00
2020-05-27 11:04:49 +00:00
sudo apt-get install liblzma-dev libzstd-dev
2014-05-05 14:01:50 +00:00
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"
2014-05-20 13:59:56 +00:00
### 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"
2018-03-29 17:00:53 +00:00
### Building without internal audio players
2013-06-18 01:11:21 +00:00
If you have problem building with FFmpeg/libao (for example, Ubuntu older than 12.04), you can pass
2018-03-29 17:00:53 +00:00
`"CONFIG+=no_ffmpeg_player"` to `qmake` in order to disable FFmpeg+libao internal audio player back end:
2013-06-18 01:11:21 +00:00
2018-03-29 17:00:53 +00:00
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"
2013-06-18 01:11:21 +00:00
2014-05-05 14:01:50 +00:00
< b > NB:</ b > All additional settings for `qmake` that you need must be combined in one `qmake` launch, for example:
2018-03-29 17:00:53 +00:00
qmake "CONFIG+=zim_support" "CONFIG+=no_extra_tiff_handler" "CONFIG+=no_ffmpeg_player"
2014-05-05 14:01:50 +00:00
2013-06-18 01:11:21 +00:00
Then, invoke `make clean` before `make` because the setting change:
make clean & & make
2022-10-02 07:34:46 +00:00
### Building with xapian
2022-10-05 23:54:28 +00:00
build xapian from source, download and extract the xapian-core source code.
./configure
make
make install
2022-10-10 16:12:24 +00:00
On Windows,follow the instructions in the xapian-core/INSTALL Visual Studio parts.( **xapian does not support Debug in Windows**)
A precompiled version of xapian lib has provided in winlibs
2022-10-05 23:54:28 +00:00
2022-10-02 07:34:46 +00:00
use `CONFIG+=use_xapian` to enable this feature. when enabled ,xapian will be used to support as the the fulltext's backend engine.
qmake "CONFIG+=use_xapian"
2016-04-07 21:45:27 +00:00
### Building under Windows with MS Visual Studio
2022-02-16 01:58:28 +00:00
the source code has offered precompile x64 windows libs on winlibs/lib/msvc. you can build your own version either.
2016-04-07 21:45:27 +00:00
2022-01-21 08:25:55 +00:00
To build with Visual Studio.
2022-01-21 08:57:09 +00:00
check this [how to build with visual studio ](howto/how%20to%20build%20and%20debug%20with%20VS2019.md )
2016-04-07 21:45:27 +00:00
2013-05-03 20:25:57 +00:00
## 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
< b > NB:< / b > Don't do that on Windows!
2020-10-01 21:59:19 +00:00
You can uninstall via:
make uninstall
2013-05-03 20:25:57 +00:00
## License
This project is licensed under the < b > GNU GPLv3+</ b > license, a copy of which can be found in the `LICENSE.txt` file.
## Support
2013-06-13 19:17:12 +00:00
Users looking for support should file an issue in the official [GoldenDict issue tracker ](https://github.com/goldendict/goldendict/issues ),
or even better: submit a [pull request ](https://github.com/goldendict/goldendict/pulls ) if you have a fix available.
General questions should be asked on the [official GoldenDict forum ](http://goldendict.org/forum/ ).