Dépendances
Jami est un logiciel vaste et complexe, qui dépend de plusieurs bibliothèques externes de logiciels libres. Nous décrivons, ci-dessous, ces dépendances et comment les installer sur certains systèmes.
jami-daemon
Pour construire le daemon Jami, il faut actuellement les outils et les bibliothèques suivants:
Autotools GNU (autoconf, autoconf-archive, autopoint et automake)
Le compilateur C++ (g++) de GCC (GNU Compiler Collection)
dbus-c++
libxfixes
speexdsp
uuid
FFmpeg (libavcodec, libavdevice, libswscale, et libavutil)
gsm
pjproject (Une branche modifiée spécifique à Jami est requise)
Sur les distributions GNU/Linux dérivées de Debian qui utilisent dpkg
telles que Debian, Trisquel, Ubuntu, et Linux Mint, les paquets peuvent être installés avec les commandes apt-get
ou apt
de la manière suivante :
sudo apt-get install autoconf autoconf-archive autopoint automake \
cmake make dbus doxygen graphviz g++ gettext libasound2-dev \
libavcodec-dev libavdevice-dev libavformat-dev libboost-dev \
libcppunit-dev libdbus-1-dev libdbus-c++-dev libexpat1-dev \
libgnutls28-dev libgtk-3-dev libjack-dev libopus-dev \
libpcre3-dev libpulse-dev libssl-dev libspeex-dev \
libspeexdsp-dev libswscale-dev libtool libudev-dev \
libyaml-cpp-dev sip-tester swig uuid-dev yasm libjsoncpp-dev \
libva-dev libvdpau-dev libmsgpack-dev pandoc nasm dpkg-dev
Sur les distributions GNU/Linux qui utilisent rpm
telles que Fedora et openSUSE, les paquets peuvent être installés avec les commandes dnf
, yum
ou zypper
de la manière suivante :
sudo dnf install autoconf autoconf-archive automake cmake make \
speexdsp-devel pulseaudio-libs-devel libtool dbus-devel \
expat-devel pcre-devel doxygen graphviz yaml-cpp-devel \
boost-devel dbus-c++-devel dbus-devel libXext-devel \
libXfixes-devel yasm speex-devel chrpath check uuid-c++-devel \
gettext-devel gcc-c++ which alsa-lib-devel systemd-devel \
libuuid-devel uuid-devel gnutls-devel nettle-devel opus-devel \
speexdsp-devel yaml-cpp-devel swig jsoncpp-devel patch \
libva-devel openssl-devel libvdpau-devel msgpack-devel \
sqlite-devel openssl-static pandoc nasm bzip2
Si des problèmes surgissent à propos de dépendances irrésolues, vérifiez :
Les définitions de paquets Jami, disponibles sur dl.jami.net, et
Le script
build.py
, sur le référentiel dejami-project
.
jami-client-qt
Voir aussi
Pour des instructions complètes pour construire le client de bureau Qt, référez-vous aux instructions du fichier INSTALL.md.
Pour construire le daemon Jami, il faut actuellement les outils et les bibliothèques suivants :
jami-daemon
libnm
libnotify
libqrencode
libayatana-appindicator ou libappindicator (facultatif pour les notifications)
qt6-base
qt6-declarative
qt6-graphicaleffects
qt6-multimedia
qt6-networkauth
qt6-svg
qt6-tools
qt6-webengine (optionnel, actuellement pour les prévisualisations de liens et certaines prévisualisations de fichiers multimédias)
Le paquet libqt-jami (respectivement jami-libqt) disponible sur dl.jami.net, fournit les dépendances Qt 6 pour les distributions dérivées de Debian basées sur dpkg (respectivement RPM). Il est nécessaire pour construire Jami sur des versions plus anciennes de ces distributions où Qt 6 n’est pas encore disponible en tant que paquet officiel sur les référentiels de ces distributions. Pour installer ce paquet qui fournit les dépendances à Qt 6 sur une distribution supportée :
Ajoutez le référentiel dl.jami.net en suivant les instructions de la page Télécharger Jami pour GNU/Linux ; et
Installer le paquet à l’aide du Terminal, en utilisant la commande
sudo apt-get install libqt-jami
(sur une distribution GNU/Linux dérivée de Debian basée sur dpkg) ou biensudo dnf install jami-libqt
(sur une distribution GNU/Linux basée sur RPM).
Sur les distributions GNU/Linux dérivées de Debian basées sur dpkg, telles que Debian, Trisquel, Ubuntu et Linux Mint, vous pouvez installer les paquets en utilisant apt-get
ou apt
comme suit :
sudo apt-get install qt6-base-dev qt6-tools-dev \
qt6-tools-dev-tools qt6-l10n-tools libqt6sql6-sqlite \
libqt6core5compat6-dev libqt6networkauth6-dev \
qt6-multimedia-dev libqt6svg6-dev qt6-declarative-dev \
qml6-module-qt-labs-qmlmodels \
qml6-module-qt5compat-graphicaleffects \
qml6-module-qtqml-workerscript qml6-module-qtmultimedia \
qml6-module-qtquick qml6-module-qtquick-controls \
qml6-module-qtquick-dialogs qml6-module-qtquick-layouts \
qml6-module-qtquick-shapes qml6-module-qtquick-window \
qml6-module-qtquick-templates qml6-module-qt-labs-platform \
libqrencode-dev libnm-dev libnotify-dev
Pour installer les paquets optionnels de Qt WebEngine :
sudo apt-get install libqt6webengine6-data \
libqt6webenginecore6-bin qt6-webengine-dev \
qt6-webengine-dev-tools qml6-module-qtwebengine \
qml6-module-qtwebchannel
Sur les distributions GNU/Linux basées sur RPM, telles que Fedora ou openSUSE, les paquets peuvent être installés avec les commandes dnf
, yum
ou zypper
de la manière suivante :
sudo dnf install qt6-qtbase-devel qt6-qtsvg-devel \
qt6-qtmultimedia-devel qt6-qtdeclarative-devel qrencode-devel \
NetworkManager-libnm-devel
Pour installer les paquets optionnels de Qt WebEngine :
sudo dnf install qt6-qtwebengine-devel
Note
L’approche la plus facile consiste à installer le paquet libqt-jami (respectivement jami-libqt) sur votre distribution GNU/Linux dérivée de Debian basée sur dpkg (respectivement RPM). Ceci vous garantira que :
Toutes les dépendances requises à Qt 6 sont récupérées et
L’application est la plus proche possible de ce qui a été construit et testé.