Riippuvuudet

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

Tärkeä

When building the dependencies, Jami sources should be fetched from the https://git.jami.net/savoirfairelinux site.

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.