
Kiwix Linux/Windows
The Kiwix Linux/Windows is a viewer/manager of ZIM files for GNU/Linux and Microsoft Windows OSes.
Disclaimer
This document assumes you have a little knowledge about software compilation. If you experience difficulties with the dependencies or with the Kiwix library compilation itself, we recommend to have a look at kiwix-build.
Dependencies
The Kiwix application relies on many third party software libraries. The following libraries need to be available:
These dependencies may or may not be packaged by your operating system. They may also be packaged but only in an older version. The compilation script will tell you if one of them is missing or too old. In the worst case, you will have to download and compile a bleeding edge version by hand.
Libkiwix has to be compiled dynamically, the best way to have it is to use kiwix-build.
Install needed packages (on Ubuntu 22.04+):
sudo apt install qt6-base-dev qt6-base-dev-tools qt6-webengine-dev \
libqt6webenginecore6-bin libqt6svg6 qt6-speech-flite-plugin \
qt6-speech-speechd-plugin qt6-speech-flite-plugin
Compilation
qmake
needs to be configured to use Qt6:
qtchooser -install qt6 $(which qmake6) # run once
export QT_SELECT=qt6 # set in environments where Qt6 builds are desired
First confirm qmake
is using the right version, this should produces this output:
$ qmake --version
QMake version 3.1
Using Qt version 6.2.4 in /usr/lib/aarch64-linux-gnu
Once all dependencies are installed, you can compile Kiwix:
qmake .
make
qmake
will use pkg-config to locate libraries. Depending on where
you've installed libkiwix (and other libraries) you may have to
update the env variable PKG_CONFIG_PATH
. It can be set as follows,
for example, for x86-64 native systems:
export PKG_CONFIG_PATH="<...>/BUILD_native_dyn/INSTALL/lib/x86_64-linux-gnu/pkgconfig"
You may want to simply open the kiwix-desktop
project in QtCreator and
then compile the project from there (don't forget to update
PKG_CONFIG_PATH
if necessary).
Compilation with Qt5
It is still possible to compile using Qt5, following packages are needed:
sudo apt-get install libqt5gui5 qtbase5-dev qtwebengine5-dev \
libqt5svg5-dev qt5-image-formats-plugins aria2 \
qttools5-dev-tools qtchooser qt5-qmake \
qtbase5-dev-tools libqt5texttospeech5-dev
qmake
needs to be configured to use Qt5:
qtchooser -install qt5 $(which qmake5) # run once
export QT_SELECT=qt5 # set in environments where Qt5 builds are desired
qmake --version
then build as normal:
qmake .
make
Compilation on Microsoft Windows
Here is the online documentation.
Installation
To install Kiwix on the system:
sudo make install
Run
To run Kiwix:
kiwix
You might have to refresh the ld
database before:
sudo ldconfig
If you face problems such as library not found...
, add the following
environment variable:
LD_LIBRARY_PATH="<...>/BUILD_native_dyn/INSTALL/lib/x86_64-linux-gnu"
Communication
Available communication channels:
- Web Public Chat channel
- Mailing list
- Slack: #android channel Get an invite
- IRC: #kiwix on irc.freenode.net
For more information, please refer to https://wiki.kiwix.org/wiki/Communication.