وابستگی ها

Jami یک قطعه بزرگ و پیچیده از نرم افزار است و به چندین کتابخانه نرم افزار آزاد خارجی وابسته است. در اینجا ما این وابستگی ها را و نحوه نصب آنها با چند سیستم بسته محبوب را شرح می دهیم.

جامی-دائون

ساخت ديمون جامي در حال حاضر به ابزارها و کتابخانه های زیر نیاز دارد:

  • GNU Autotools (autoconf، آٹوکانف آرکائیو، آٹوپونت و اتوماتیک)

  • GCC (GNU Compiler Collection) C++ (g++)

  • GNU Make

  • GNU gettext

  • GNU Libtool

  • GnuTLS

  • argon2

  • asio

  • دبیس

  • dbus-c++

  • لیبپین

  • لیبسل

  • ليبپلس

  • لابهوند

  • لیبکسپات

  • pcre3

  • یامل-سیپ

  • libxext

  • اصلاحات

  • اسپیکس

  • اسپیکس

  • آید

  • کد لیبای FFmpeg, دستگاه لیبای, مقیاس لیبای, لیبای

  • اوپوس

  • udev

  • fmt

  • GSM

  • pjproject (فارک سفارشی جامی مورد نیاز است)

  • جسونکپ

  • مخزن های زنده

  • لیبنات

  • لیبا

  • libcrypto++

  • لیبودی

  • libsecp256k1

  • libgit2

  • http-parser

  • نسیم

  • یاسم

  • خرس

  • باز کردن

  • باقیمانده

  • Webrtc-صوتی پردازش

  • زلیب

در توزیع های مبتنی بر dpkg/deb مانند Debian، Trisquel و Ubuntu می توانید از این بسته ها با استفاده از apt-get یا apt استفاده کنید:

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 مانند Fedora و openSUSE، وابستگی ها می توانند با استفاده از dnf، yum، یا zypper مانند این نصب شوند:

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

ما بهترین تلاش را برای نگه داشتن لیست بالا به روز خواهیم کرد، اما در صورت مواجه شدن با هر گونه مشکلاتی با وابستگی های گمشده، شما همیشه می توانید تعریف های بسته های Jami را که از طریق dl.jami.net توزیع می شوند و همچنین اسکریپت build.py را که در مخزن ``jami-project موجود است، بررسی کنید.

jami-client-qt

توجه

For complete instructions on how to build the Qt client, please refer to te the INSTALL.md file.

ساخت مشتری Jami در حال حاضر به ابزار و کتابخانه های زیر نیاز دارد:

  • جامی-دائون

  • لیب نیم

  • اطلاع رسانی

  • کد libqren

  • شاخص اعمال لیبیانا یا لیباپینڈیکاتور (فروخته، برای اطلاعیه ها)

  • قتیل6

  • اعلامیه qt6

  • Qt6- اثرات گرافیکی

  • qt6-متن

  • qt6- شبکه

  • qt6-svg

  • ابزار qt6

  • qt6-webengine (اختيار، در حال حاضر برای پیش نمایش لینک ها و برخی از پیش نمایش فایل های رسانه ای)

بسته های libqt-jami و jami-libqt از dl.jami.net وابستگی های لازم Qt 6 را به توزیع های پشتیبانی شده dpkg/deb و rpm مبتنی بر GNU/Linux ارائه می دهند. این به ویژه برای ساخت Jami در نسخه های کمی قدیمی تر از این توزیع ها مفید است که Qt 6 هنوز در مخزن رسمی توزیع بسته نشده است. برای نصب این بسته که وابستگی های Qt 6 را به توزیع پشتیبانی می کند، ابتدا مخزن dl.jami.net مربوطه را با پیروی از دستورالعمل های Download Jami for GNU/Linux <https://jami.net/download-jami-linux/> `_ صفحه ی وب سایت Jami استفاده کنید، سپس بسته را با استفاده از دستور مانند ``s apt-getqt-jami (برای توزیع های مبتنی بر GNU/Linux) و ``s dpudo-lib-justify (برای توزیع های مبتنی بر GNU/Linux) ``s d`s d`s d`s d`s d`s d`s d`s d`s d`s d`s d`s d`s d`s d`s d`s d`s d`s d'd d'd d'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'd'

در توزیع های مبتنی بر dpkg/deb مانند Debian، Trisquel و Ubuntu می توانید از این بسته ها با استفاده از apt-get یا apt استفاده کنید:

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

و برای وابستگی های اختیاری Qt WebEngine:

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

در توزیع های مبتنی بر rpm مانند Fedora و openSUSE، وابستگی ها می توانند با استفاده از dnf یا zypper مثل این نصب شوند:

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

و برای وابستگی های اختیاری Qt WebEngine:

sudo dnf install qt6-qtwebengine-devel

توجه

با توجه به نوین بودن Qt 6, ممکن است هنوز به طور کامل (یا اصلا) در مخزن رسمی توزیع GNU / Linux انتخاب شما بسته بندی نشده باشد. در این صورت، ساده ترین رویکرد نصب بسته libqt-jami یا jami-libqt در توزیع GNU / Linux مبتنی بر dpkg / deb پشتیبانی شده و rpm مبتنی بر شما باشد.