In this manual we will use Eclipse-CDT environment. All developments are done on Fedora Linux.
Cmake dependencies on Fedora are stored at /usr/lib64/cmake/
directory, it is the place where find_package(XXXX REQUIRED)
directive will try to find it. The package providing it can be found using command
dnf provides /usr/lib64/cmake/XXXX
The next packages are required to develop qTox:
dnf install cmake qt5-qtbase-devel qt5-linguist qt5-qtsvg-devel toxcore-devel libasan ffmpeg-devel libavif-devel qrencode-devel libsodium-devel libswscale-free-devel sqlcipher-devel libvpx-devel libexif-devel kf5-sonnet-devel openal-soft-devel libXScrnSaver-devel rpm-build rpm-sign
Note: ffmpeg-devel can be installed from rpmfusion repository.
This section is valid for Fedora Linux only.
export VERSION="1.17.6"
cmake -G "Eclipse CDT4 - Unix Makefiles" ./
make package
rpm --addsign qtox-${VERSION}-fc41.x86_64.rpm
rpm --checksig qtox-${VERSION}-fc41.x86_64.rpm
# Check the dependencies
rpm -qp qtox-${VERSION}-fc41.x86_64.rpm --requires
Previously qTox used to support extended messages, which were handled in tox_extension_messages
that was referring to toxext
. These packages are located in separate repositories, were not developed for a long time and contain vulnerabilities. The section about these extensions is given here for historical purposes only. These steps are not needed anymore. If you need tox estensyins for some reason, please use branch qtox_with_extensions. Use it on your own risk!
The qTox project is dependfent on toxext and tox_extension_messages. We need to build it before building our project. This project was forked to new location.
export ECLIPSE_VER="4.34.0"
cmake -G "Eclipse CDT4 - Unix Makefiles" ./ -DCMAKE_ECLIPSE_VERSION=${ECLIPSE_VER}
toxext
can be build by either make or from Eclipse or using make.
make
sudo make install
After toxext
build the tox_extension_messages
. Original location, forked location
cmake -G "Eclipse CDT4 - Unix Makefiles" ./
make
sudo make install