diff options
author | Tukusej’s Sirs <tukusejssirs@protonmail.com> | 2021-07-19 16:42:56 +0300 |
---|---|---|
committer | Remmina Bot <admin@remmina.org> | 2021-07-19 16:42:56 +0300 |
commit | cd8db6c1e04f597cf761eb224334d2fad22a11f5 (patch) | |
tree | 945576eb90192f0451c62fb9b83bd5261f4268af | |
parent | 77c02746d946338dae8531369c7a76eb3d7445e1 (diff) |
docs: update compilation-guide
-rw-r--r-- | compilation-guide.html | 219 |
1 files changed, 144 insertions, 75 deletions
diff --git a/compilation-guide.html b/compilation-guide.html index f6f1348..e17bab7 100644 --- a/compilation-guide.html +++ b/compilation-guide.html @@ -2,7 +2,7 @@ title: Compilation guide description: A guide to compile Remmina from source on different operating systems published: true -date: 2021-07-19T13:15:17.849Z +date: 2021-07-19T13:42:48.760Z tags: editor: code dateCreated: 2021-07-18T10:35:58.314Z @@ -147,81 +147,150 @@ dateCreated: 2021-07-18T10:35:58.314Z <h3 class='tabset'>Tab</h3> - <h4>apt</h4> - <pre> + <h4>Arch Linux-based distributions</h4> + <pre> + <code>sudo pacman -S base-devel git avahi gtk3 libssh libvncserver gnome-keyring kwallet \</code> + <code> libgnome-keyring libpulse libsodium vte3 cmake libappindicator-gtk3 \</code> + <code> docbook-utils docbook-xsl pcre pcre2 spice-gtk spice-protocol gtk-vnc</code> + </pre> + + <h4>Debian 10</h4> + <pre> + <code>sudo apt install build-essential git-core gtk-vnc libssh-dev cmake libx11-dev \</code> + <code> libxext-dev libxinerama-dev libxcursor-dev libxdamage-dev \</code> + <code> libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 \</code> + <code> libxml2-dev libxrandr-dev libgstreamer1.0-dev \</code> + <code> libgstreamer-plugins-base1.0-dev libxi-dev libavutil-dev \</code> + <code> libjson-glib-dev libavcodec-dev libxtst-dev libgtk-3-dev \</code> + <code> libgcrypt20-dev libpulse-dev libvte-2.91-dev libxkbfile-dev \</code> + <code> libtelepathy-glib-dev libjpeg-dev libgnutls28-dev \</code> + <code> libsecret-1-dev libavahi-ui-gtk3-dev libvncserver-dev \</code> + <code> libappindicator3-dev intltool libsecret-1-dev \</code> + <code> libwebkit2gtk-4.0-dev libsystemd-dev libsodium-dev \</code> + <code> libkf5wallet-dev libusb-1.0-0-dev libpcre2-dev</code> + </pre> + + <h4>Debian 9</h4> + <pre> + <code>sudo apt purge libssl-dev</code> + <code></code> + <code>sudo apt install build-essential git-core gtk-vnc libssh-dev cmake libx11-dev \</code> + <code> libxext-dev libxinerama-dev libxcursor-dev libxdamage-dev \</code> + <code> libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 \</code> + <code> libxml2-dev libxrandr-dev libgstreamer1.0-dev \</code> + <code> libgstreamer-plugins-base1.0-dev libxi-dev libavutil-dev \</code> + <code> libjson-glib-dev libavcodec-dev libxtst-dev libgtk-3-dev \</code> + <code> libgcrypt11-dev libpulse-dev libvte-2.91-dev libxkbfile-dev \</code> + <code> libtelepathy-glib-dev libjpeg-dev libgnutls28-dev \</code> + <code> libgnome-keyring-dev libavahi-ui-gtk3-dev libvncserver-dev \</code> + <code> libappindicator3-dev intltool libsecret-1-dev \</code> + <code> libwebkit2gtk-4.0-dev libsystemd-dev libsodium-dev libpcre2-dev</code> + </pre> + + <h4>FreeBSD 11</h4> + <pre> + <code>sudo pkg install cmake gccmakedep git pkgconf libX11 libXext libXinerama libXcursor \</code> + <code> libXdamage libXv libxkbfile alsa-lib cups ffmpeg pulseaudio libssh \</code> + <code> libXi libXtst libXrandr xmlto gstreamer1 gstreamer1-plugins ffmpeg \</code> + <code> libx264 qt5-qmake qt5-buildtools pcre2 gtk-vnc</code> + </pre> + + <h4>Ubuntu 20.04+</h4> + <pre> + <code>sudo apt install build-essential git-core cmake libssl-dev libx11-dev \</code> + <code> libxext-dev libxinerama-dev libxcursor-dev libxdamage-dev \</code> + <code> libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 \</code> + <code> libxml2-dev libxrandr-dev libgstreamer1.0-dev \</code> + <code> libgstreamer-plugins-base1.0-dev libxi-dev libavutil-dev \</code> + <code> libavcodec-dev libxtst-dev libgtk-3-dev libgcrypt20-dev \</code> + <code> libssh-dev libpulse-dev libvte-2.91-dev libxkbfile-dev \</code> + <code> libtelepathy-glib-dev libjpeg-dev libgnutls28-dev \</code> + <code> libavahi-ui-gtk3-dev libvncserver-dev libappindicator3-dev \</code> + <code> intltool libsecret-1-dev libwebkit2gtk-4.0-dev libsystemd-dev \</code> + <code> libsoup2.4-dev libjson-glib-dev libavresample-dev \</code> + <code> libsodium-dev libusb-1.0-0-dev libpcre2-dev</code> + </pre> + + <h4>Ubuntu 18.04</h4> + <pre> + <code>sudo apt install build-essential git-core cmake libssl-dev libx11-dev \</code> + <code> libxext-dev libxinerama-dev libxcursor-dev libxdamage-dev \</code> + <code> libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 \</code> + <code> libxml2-dev libxrandr-dev libgstreamer1.0-dev \</code> + <code> libgstreamer-plugins-base1.0-dev libxi-dev libavutil-dev \</code> + <code> libavcodec-dev libxtst-dev libgtk-3-dev libgcrypt11-dev \</code> + <code> libssh-dev libpulse-dev libvte-2.91-dev libxkbfile-dev \</code> + <code> libtelepathy-glib-dev libjpeg-dev libgnutls28-dev \</code> + <code> libgnome-keyring-dev libavahi-ui-gtk3-dev libvncserver-dev \</code> + <code> libappindicator3-dev intltool libsecret-1-dev \</code> + <code> libwebkit2gtk-4.0-dev libsystemd-dev libsoup2.4-dev \</code> + <code> libjson-glib-dev libavresample-dev libsodium-dev \</code> + <code> libusb-1.0-0-dev libpcre2-dev</code> + </pre> + + <h4>Red Hat-based distributions</h4> + + <blockquote class="is-info"><p>We use <code>yum</code> for all commands as it’s still an alias on those distros which migrated to <code>dnf</code>.</p></blockquote> + + <blockquote class="is-warning"><p>We should create separate commands for Fedora, CentOS / Red Hat 7 and CentOS / Red Hat 8.</p></blockquote> + + <p><b>Add repositories</b></p> + + <pre> + <code>## Get some info of the currently installed distribution</code> + <code>## Note: This is used to determine what repositories need to be be installed</code> + <code>## and to create the relevant URLs</code> + <code>distro_name="$(grep -Po '^ID="*\K[^"]*' /etc/os-release)"</code> + <code>distro_version="$(rpm -E %$distro_name)"</code> + <code></code> + <code>if [ "$distro_name" = 'fedora' ]; then</code> + <code> distro_name_short='fedora'</code> + <code>else</code> + <code> distro_name_short='el'</code> + <code> epel_repo='epel-release'</code> + <code>fi</code> + <code></code> + <code>## epel (on CentOS only): required for `openjpeg2-devel`, `openssl-devel`</code> + <code>## rpmfusion-free-updates (on both CentOS and Fedora): required for `ffmpeg-devel`</code> + <code>## PowerTools (on CentOS 8+ only)</code> + <code>## okay (on CentOS 8+); required for `avahi-ui-devel`</code> + <code>sudo yum -y install $epel_repo \</code> + <code> https://download1.rpmfusion.org/free/${distro_name_short}/rpmfusion-free-release-${distro_version}.noarch.rpm</code> + <code></code> + <code>if [ "$distro_name" = 'centos' ] && [ "$distro_version" = 8 ]; then</code> + <code> sudo dnf config-manager --enable PowerTools</code> + <code> sudo rpm -ivh http://repo.okay.com.mx/${distro_name}/${distro_version}/x86_64/release/okay-release-1-3.el${distro_version}.noarch.rpm</code> + <code></code> + <code> # Disable okay repo for potential package conflicts</code> + <code> sudo dnf config-manager --disable okay</code> + <code>fi</code> + </pre> + + <p><b>Update <code>yum</code> cache and packages</b></p> + + <pre> + <code>sudo yum -y upgrade</code> + </pre> - </pre> - - <h4>dnf/yum</h4> - - <blockquote class="is-info"><p>We use <code>yum</code> for all commands as it’s still an alias on those distros which migrated to <code>dnf</code>.</p></blockquote> - - <blockquote class="is-warning"><p>We should create separate commands for Fedora, CentOS / Red Hat 7 and CentOS / Red Hat 8.</p></blockquote> - - <p><b>Add repositories</b></p> - - <pre> - <code>## Get some info of the currently installed distribution</code> - <code>## Note: This is used to determine what repositories need to be be installed</code> - <code>## and to create the relevant URLs</code> - <code>distro_name="$(grep -Po '^ID="*\K[^"]*' /etc/os-release)"</code> - <code>distro_version="$(rpm -E %$distro_name)"</code> - <code></code> - <code>if [ "$distro_name" = 'fedora' ]; then</code> - <code> distro_name_short='fedora'</code> - <code>else</code> - <code> distro_name_short='el'</code> - <code> epel_repo='epel-release'</code> - <code>fi</code> - <code></code> - <code>## epel (on CentOS only): required for `openjpeg2-devel`, `openssl-devel`</code> - <code>## rpmfusion-free-updates (on both CentOS and Fedora): required for `ffmpeg-devel`</code> - <code>## PowerTools (on CentOS 8+ only)</code> - <code>## okay (on CentOS 8+); required for `avahi-ui-devel`</code> - <code>sudo yum -y install $epel_repo \</code> - <code> https://download1.rpmfusion.org/free/${distro_name_short}/rpmfusion-free-release-${distro_version}.noarch.rpm</code> - <code></code> - <code>if [ "$distro_name" = 'centos' ] && [ "$distro_version" = 8 ]; then</code> - <code> sudo dnf config-manager --enable PowerTools</code> - <code> sudo rpm -ivh http://repo.okay.com.mx/${distro_name}/${distro_version}/x86_64/release/okay-release-1-3.el${distro_version}.noarch.rpm</code> - <code></code> - <code> # Disable okay repo for potential package conflicts</code> - <code> sudo dnf config-manager --disable okay</code> - <code>fi</code> - </pre> - - <p><b>Update <code>yum</code> cache and packages</b></p> - - <pre> - <code>sudo yum -y upgrade</code> - </pre> - - <p><b>Install dependencies</b></p> - - <pre> - <code>sudo yum -y install alsa-lib-devel atk-devel avahi-ui-gtk3 cairo-devel cmake3 \</code> - <code> cups-devel docbook-style-xsl ffmpeg-devel gcc gcc-c++ git \</code> - <code> glib2-devel gnutls-devel gstreamer1-devel \</code> - <code> gstreamer1-plugins-base-devel gtk3-devel harfbuzz-devel \</code> - <code> json-glib-devel libappindicator-gtk3 \</code> - <code> libappindicator-gtk3-devel libgcrypt-devel \</code> - <code> libsecret-devel libSM-devel libsodium libsodium-devel \</code> - <code> libsoup-devel libssh-devel libusb-devel \</code> - <code> libvncserver-devel libX11-devel libXcursor-devel \</code> - <code> libXdamage-devel libXext-devel libXi-devel \</code> - <code> libXinerama-devel libxkbfile-devel libXrandr-devel \</code> - <code> libxslt libxslt-devel libXtst-devel libXv-devel make \</code> - <code> ninja-build openjpeg2-devel openssl-devel pango-devel \</code> - <code> pulseaudio-libs-devel vte291 vte291-devel \</code> - <code> webkitgtk4-devel xmlto xorg-x11-server-utils pcre2 pcre2-devel</code> - </pre> - - <h4>pacman</h4> - <pre> - <code>sudo pacman -S base-devel git avahi gtk3 libssh libvncserver gnome-keyring kwallet \</code> - <code> libgnome-keyring libpulse libsodium vte3 cmake libappindicator-gtk3 \</code> - <code> docbook-utils docbook-xsl pcre pcre2 spice-gtk spice-protocol gtk-vnc</code> - </pre> + <p><b>Install dependencies</b></p> + + <pre> + <code>sudo yum -y install alsa-lib-devel atk-devel avahi-ui-gtk3 cairo-devel cmake3 \</code> + <code> cups-devel docbook-style-xsl ffmpeg-devel gcc gcc-c++ git \</code> + <code> glib2-devel gnutls-devel gstreamer1-devel \</code> + <code> gstreamer1-plugins-base-devel gtk3-devel harfbuzz-devel \</code> + <code> json-glib-devel libappindicator-gtk3 \</code> + <code> libappindicator-gtk3-devel libgcrypt-devel \</code> + <code> libsecret-devel libSM-devel libsodium libsodium-devel \</code> + <code> libsoup-devel libssh-devel libusb-devel \</code> + <code> libvncserver-devel libX11-devel libXcursor-devel \</code> + <code> libXdamage-devel libXext-devel libXi-devel \</code> + <code> libXinerama-devel libxkbfile-devel libXrandr-devel \</code> + <code> libxslt libxslt-devel libXtst-devel libXv-devel make \</code> + <code> ninja-build openjpeg2-devel openssl-devel pango-devel \</code> + <code> pulseaudio-libs-devel vte291 vte291-devel \</code> + <code> webkitgtk4-devel xmlto xorg-x11-server-utils pcre2 pcre2-devel</code> + </pre> <h2>Clone Remmina repository</h2> |