Dependências
Jami é um software grande e complexo, e depende de várias bibliotecas externas de software livre. Aqui descrevemos essas dependências e como instalar com alguns sistemas de pacotes populares.
Jami-daemon
Construir o daemon Jami requer atualmente as seguintes ferramentas e bibliotecas:
GNU Autotools (autoconf, autoconf-arquivo, autopoint e automake)
GCC (GNU Compiler Collection) Compilador C++ (g++)
GNU Make
GNU gettext
GNU Libtool
GnuTLS
Argon2
Asio
Dbus
dbus-c++
Limpão
Libssl
pulso de cabeça
libasound2
Liberexpat
Pcre3
YAML-CPP
libxext
Libxfixes
Espexo
Espexdsp
UID
Libavcodec, libavdevice, libswscale, libavutil
Opus
Udev
Fmt
Gsm
pjproject (necessário garfo personalizado de Jamie)
Jsoncpp
Arquivo de líber
Libnatpmp
Libva
Libcrypto++
Liberdade
Libsecp256k1
Libgit2
http-parser
Nasm
Yasem
Ortiga
aberta
restinio
Webrtc-processamento de áudio
Zlib
Em distribuições GNU/Linux baseadas em dpkg/deb, como Debian, Trisquel e Ubuntu, você pode instalar esses usando pacotes usando apt-get
ou apt
como segue:
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
Em distribuições baseadas em rpm como Fedora e openSUSE as dependências podem ser instaladas usando dnf
, yum
, ou zypper
como assim:
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
Faremos o nosso melhor para manter a lista acima atualizada, mas no caso de você enfrentar quaisquer problemas com dependências faltantes, você pode sempre verificar as definições de pacotes para pacotes Jami distribuídos através dl.jami.net, bem como o script build.py
, disponível no repositório ``jami-projeto.
jami-client-qt
Nota
Para obter instruções completas sobre como compilar o cliente Qt, consulte o arquivo INSTALL.md.
Construir o cliente Jami requer atualmente as seguintes ferramentas e bibliotecas:
Jami-daemon
Libnm
Libnotify
código de libqren
libayatana-appindicator ou libappindicator (opcional, para notificações)
qt6-base
qt6-declarative
qt6-graphicaleffects
qt6-multimedia
qt6-networkauth
qt6-svg
qt6-tools
Qt6-webengine (opcional, atualmente para visualizações de links e algumas visualizações de arquivos multimídia)
Os pacotes libqt-jami e jami-libqt do dl.jami.net fornecem as dependências necessárias do Qt 6 em distribuições GNU/Linux suportadas baseadas em dpkg/deb e rpm, respectivamente. Isso é especialmente útil para compilar o Jami em versões um pouco mais antigas dessas distribuições, nas quais o Qt 6 ainda não foi empacotado nos repositórios oficiais da distribuição. Para instalar esse pacote que fornece as dependências do Qt 6 em uma distribuição suportada, primeiro adicione o respectivo repositório dl.jami.net seguindo as instruções em Download Jami for GNU/Linux do site da Jami e, em seguida, instale o pacote usando um comando como sudo apt-get install libqt-jami
(para distribuições GNU/Linux baseadas em dpkg/deb) e sudo dnf install jami-libqt
(para distribuições GNU/Linux baseadas em rpm).
Em distribuições GNU/Linux baseadas em dpkg/deb, como Debian, Trisquel e Ubuntu, você pode instalar esses usando pacotes usando apt-get
ou apt
como segue:
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
E para as dependências opcionais do Qt WebEngine:
sudo apt-get install libqt6webengine6-data \
libqt6webenginecore6-bin qt6-webengine-dev \
qt6-webengine-dev-tools qml6-module-qtwebengine \
qml6-module-qtwebchannel
Em distribuições baseadas em rpm como Fedora e openSUSE as dependências podem ser instaladas usando dnf
ou zypper
assim:
sudo dnf install qt6-qtbase-devel qt6-qtsvg-devel \
qt6-qtmultimedia-devel qt6-qtdeclarative-devel qrencode-devel \
NetworkManager-libnm-devel
E para as dependências opcionais do Qt WebEngine:
sudo dnf install qt6-qtwebengine-devel
Nota
A abordagem mais fácil seria instalar o pacote libqt-jami ou jami-libqt na sua distribuição GNU/Linux baseada em dpkg/deb e rpm, respetivamente, para obter todas as dependências necessárias do Qt 6 do Jami. E para ser o mais parecido possível com o que estamos a testar e a construir.