Riippuvuudet

Jami on laaja ja monimutkainen ohjelmisto. Silläon riippuvuuksia useista ulkoisista ilmaisista kirjastoista. Riippuvuudet ja niiden asentaminen joihinkin järjestelmiin on kuvattu alla.

jami-daemon taustapalvelu

Jami-daemonin rakentaminen vaatii seuraavat työkalut ja kirjastot:

Debian-pohjaisissa dpkg GNU/Linux-jakeluissa (kuten Debian, Trisquel, Ubuntu ja Linux Mint), paketit voidaan asentaa komennolla ”apt-get” tai ”apt” seuraavasti:

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

RPM-pohjaisissa GNU/Linux-jakeluissa (kuten Fedora ja openSUSE), paketit voidaan asentaa komennolla ”dnf”, ”yum” tai ”zypper” seuraavasti:

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

Jos puuttuvien riippuvuuksien kanssa on ongelmia, tarkista seuraavat:

  • Jami-paketin määritys on julkaistu osoitteessa dl.jami.net; ja

  • Ohjelma ”build.py”-skripti ”jami-project”-arkistossa.

jami-asiakas-qt

Katso myös

Täydelliset ohjeet Qt Desktop-ohjelman rakentamiseen löytyvät INSTALL.md tiedostosta.

Jamin rakentaminen vaatii seuraavat työkalut ja kirjastot:

  • jami-daemon taustapalvelu

  • libnm

  • libnotify

  • libqrencode

  • libayatana-appindicator tai libappindicator (valinnainen, ilmoituksia varten)

  • qt6-base

  • qt6-declarative

  • qt6-graphicaleffects

  • qt6-multimedia

  • qt6-networkauth

  • Qt6-svg

  • Qt6-työkaluja

  • qt6-webengine (valinnainen, tällä hetkellä linkkien ja joidenkin mediatiedostojen esikatseluun)

Sivustolla dl.jami.net ladattavat libqt-jami- ja jami-libqt-paketit tarjoavat tarvittavat Qt 6 -riippuvuudet dpkg/Debian-pohjaisissa ja RPM-pohjaisissa GNU/Linux-jakeluissa. Hyödyllinen Jamin rakentamiseen näiden jakeluiden hieman vanhemmille versioille, joissa Qt 6:ta ei vielä ole pakattu jakelun virallisiin arkistoihin. Voit asentaa Qt 6 -riippuvuudet tuettuun jakeluun seuraavasti:

  1. Lisää vastaava arkisto dl.jami.net noudattamalla Lataa Jami for GNU/Linux sivun ohjeita; ja

  2. Asenna paketti päätteessä komennolla ”sudo apt-get install libqt-jami” (dpkg/Debian-pohjaisille GNU/Linux-jakeluille) tai ”sudo dnf install jami-libqt” (RPM-pohjaisille GNU/Linux-jakeluille).

Debian-pohjaisissa GNU/Linux-jakeluissa (kuten Debian, Trisquel, Ubuntu ja Linux Mint) paketit voidaan asentaa komennolla ”apt-get” tai ”apt” seuraavasti:

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

Valinnaisten Qt WebEngine pakettien asentaminen:

sudo apt-get install libqt6webengine6-data \
  libqt6webenginecore6-bin qt6-webengine-dev \
  qt6-webengine-dev-tools qml6-module-qtwebengine \
  qml6-module-qtwebchannel

RPM-pohjaisissa GNU/Linux-jakeluissa (kuten Fedora ja openSUSE) paketit voidaan asentaa komennolla ”dnf”, ”yum” tai ”zypper” seuraavasti:

sudo dnf install qt6-qtbase-devel qt6-qtsvg-devel \
  qt6-qtmultimedia-devel qt6-qtdeclarative-devel qrencode-devel \
  NetworkManager-libnm-devel

Valinnaisten Qt WebEngine pakettien asentaminen:

sudo dnf install qt6-qtwebengine-devel

Muista

Helpoin tapa olisi asentaa libqt-jami tai jami-libqt tuettuun Debian- tai RPM-pohjaiseen GNU/Linux-jakeluun. Tämä varmistaisi, että:

  • Kaikki vaaditut Qt 6 -riippuvuudet noudetaan; ja

  • Sovellus on mahdollisimman samanlainen kuin mitä rakennetaan ja testataan.