Welcome to mirror list, hosted at ThFree Co, Russian Federation.

_compilation-guide-for-_r_h_e_l_8md_source.html « docs - gitlab.com/Remmina/remminadoc.gitlab.io.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 953bcbd396b521ad51069a96a215de52f3b8ca3a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Remmina - The GTK+ Remote Desktop Client: Compilation-guide-for-RHEL.md Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Remmina - The GTK+ Remote Desktop Client
   &#160;<span id="projectnumber">v1.4.2</span>
   </div>
   <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('_compilation-guide-for-_r_h_e_l_8md.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">Compilation-guide-for-RHEL.md</div>  </div>
</div><!--header-->
<div class="contents">
<a href="_compilation-guide-for-_r_h_e_l_8md.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;These are the instructions for people who want to test the latest version of Remmina (`master` branch) on RHEL-like operating systems.</div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;Current version of this guide was tested on vanilla CentOS 7 GNOME Desktop (specifically: [CentOS-7-x86_64-DVD-1908.iso](http://tux.rainside.sk/centos/7.7.1908/isos/x86_64/)), CentOS 8 Workstation (specifically: [CentOS-8.1.1911-x86_64-dvd1.iso](http://tux.rainside.sk/centos/8.1.1911/isos/x86_64/)) and Fedora 31 x86_64 (specifically: [Fedora-Workstation-Live-x86_64-31-1.9.iso](https://download.fedoraproject.org/pub/fedora/linux/releases/31/Workstation/x86_64/iso/Fedora-Workstation-Live-x86_64-31-1.9.iso)). However, it should work on all CentOS 7+, Red Hat 7+ and Fedora 20+ versions. If you find anything not working, raise an [issue](https://gitlab.com/Remmina/Remmina/issues/new).</div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;Note that although on CentOS 8 and Fedora, they use `dnf` package manager, there is still the `yum` symlink to `dnf`, so we decided to keep `yum` in this guide to make it usable on all of these distributions without any modifications.</div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;If you want to uninstall the program, follow the instructions in the step 0.</div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;**0.** It is important that no other Remmina or FreeRDP version is installed, therefore we need to remove it.</div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;```bash</div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;# To check if a program is installed, we can use `whereis [program(s)]`</div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;whereis freerdp remmina</div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;</div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;# When FreeRDP is installed from the CentOS repo, use this command to remove it</div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;sudo yum -y remove freerdp*</div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;# When FreeRDP is installed from source code, enter the FreeRDP source code folder</div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;#   and run the following command</div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;cd ${HOME}/freerdp</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;sudo rm $(cat install_manifest.txt)</div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;# When Remmina is installed from the CentOS repo, use this command to remove it</div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;sudo yum -y remove remmina*</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;</div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;# When Remmina is installed from source code, enter the `build` folder</div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;#   in Remmina source code folder and run the following command</div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;cd ${HOME}/remmina/build</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;sudo make uninstall</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;# Finally, we need to delete the empty folders of Remmina and FreeRDP</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;# This needs to be run for uninstallation of either programs</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;sudo rmdir $(find $(whereis freerdp remmina | grep -Po &quot;^[^:]*: \K.*$&quot;) -type d | tac)</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;```</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;**1.** Add necessary repos. Note that on CentOS 7 GNOME Desktop only `epel` and `rpmfusion-free-updates` are not installed by default. I presume that `base`, `extras` and `updates` repos are installed on all version of CentOS 7.</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;```bash</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;# Get some information of the currently installed distribution</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;# Note: This is used to determine what repositories are need to be be installed</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;#   and to create the relevant URLs</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;distro_name=&quot;$(grep -Po &#39;^ID=&quot;*\K[^&quot;]*&#39; /etc/os-release)&quot;</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;distro_version=&quot;$(rpm -E %$distro_name)&quot;</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;if [ &quot;$distro_name&quot; = &#39;fedora&#39; ]; then</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;   distro_name_short=&#39;fedora&#39;</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;else</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;   distro_name_short=&#39;el&#39;</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;   epel_repo=&#39;epel-release&#39;</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;fi</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;# epel (on CentOS only): required for `openjpeg2-devel`, `openssl-devel`</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;# rpmfusion-free-updates (on both CentOS and Fedora): required for `ffmpeg-devel`</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;# PowerTools (on CentOS 8+ only)</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;# okay (on CentOS 8+); required for `avahi-ui-devel`, `openh264`, `libopenh264-devel`, `libx264-devel`</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;sudo yum -y install $epel_repo \</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;  https://download1.rpmfusion.org/free/${distro_name_short}/rpmfusion-free-release-${distro_version}.noarch.rpm</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;if [ &quot;$distro_name&quot; = &#39;centos&#39; ] &amp;&amp; [ &quot;$distro_version&quot; = 8 ]; then</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;  sudo dnf config-manager --enable PowerTools</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;  sudo rpm -ivh http://repo.okay.com.mx/${distro_name}/${distro_version}/x86_64/release/okay-release-1-3.el${distro_version}.noarch.rpm</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;  # Disable okay repo for potential package conflicts</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;  sudo dnf config-manager --disable okay</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;fi</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;if [ &quot;$distro_name&quot; = &#39;fedora&#39; ]; then</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;  sudo dnf config-manager --enable fedora-cisco-openh264</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;fi</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;```</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;**3.** Update `yum` cache and packages. This step might require a reboot.</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;```bash</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;sudo yum -y upgrade</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;```</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;**4.** Install dependencies of FreeRDP and Remmina. Note that the installation dependencies for FreeRDP and Remmina was merged. If you want to know exactly which program requires which package, see the [Dependencies](#dependencies) section at the end of this document.</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;```bash</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;sudo yum -y install alsa-lib-devel atk-devel avahi-ui-gtk3 cairo-devel cmake3 \</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;  cups-devel docbook-style-xsl ffmpeg-devel gcc gcc-c++ git glib2-devel gnutls-devel \</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;  gstreamer1-devel gstreamer1-plugins-base-devel gtk3-devel harfbuzz-devel \</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;  json-glib-devel libappindicator-gtk3 libappindicator-gtk3-devel libgcrypt-devel \</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;  libsecret-devel libSM-devel libsodium libsodium-devel libsoup-devel libssh-devel \</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;  libusb-devel libvncserver-devel libX11-devel libXcursor-devel libXdamage-devel \</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;  libXext-devel libXi-devel libXinerama-devel libxkbfile-devel libXrandr-devel libxslt \</div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;  libxslt-devel libXtst-devel libXv-devel make ninja-build openjpeg2-devel \</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;  openssl-devel pango-devel pulseaudio-libs-devel vte291 vte291-devel webkitgtk4-devel \</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;  xmlto xorg-x11-server-utils</div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;# On CentOS 8</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;if [ &quot;$distro_name&quot; = &#39;centos&#39; ] &amp;&amp; [ &quot;$distro_version&quot; = 8 ]; then</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;  sudo yum -y install --enablerepo=okay avahi-ui-devel openh264 libopenh264-devel libx264-devel</div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;fi</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;# On Fedora</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;if [ &quot;$distro_name&quot; = &#39;fedora&#39; ]; then</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;  # TODO: Do we really need `libx264`? Or even `openh264` (that for CentOS too)?</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;  sudo yum -y install avahi-ui-devel libx264 libx264-devel openh264 openh264-devel</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;fi</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;```</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;**5.** Clone FreeRDP and Remmina repos. You may want to modify the `${HOME}/{freerdp,remmina}` paths and the folder names.</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;```bash</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git ${HOME}/freerdp</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;git clone https://gitlab.com/Remmina/Remmina.git ${HOME}/remmina</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;```</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;**6.** Build FreeRDP.</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;```bash</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;mkdir ${HOME}/freerdp/build</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;cd ${HOME}/freerdp/build</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;# In the following line, the `DWITH_PULSE=ON` option needs to be included</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;# Note: `-DCMAKE_INSTALL_LIBDIR=/usr/lib64` is required when `-DCMAKE_INSTALL_PREFIX:PATH`</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;#       is not `/usr`; otherwise Remmina will not find the `libfreerdp*` libraries</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;# Note: `-DWITH_OPENH264=ON -DWITH_X264=OFF` makes FreeRDP use H264 which results</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;#       in extreme good quality for a quite good performance</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;cmake3 -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_PULSE=ON -DWITH_CUPS=on -DWITH_WAYLAND=off \</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;  -DCMAKE_INSTALL_LIBDIR=/usr/lib64 -DCMAKE_INSTALL_PREFIX:PATH=/opt -DWITH_OPENH264=ON \</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;  -DWITH_X264=OFF ..</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;make &amp;&amp; sudo make install</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;# If you install FreeRDP and Remmina to `/opt`, you need to add `/opt/bin` to PATH</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;export PATH=&quot;$PATH:/opt/bin&quot;</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;echo &#39;export PATH=&quot;$PATH:/opt/bin&quot;&#39; &gt;&gt; ${HOME}/.bashrc</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;# You can test FreeRDP by connecting to an RDP host</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;```</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;**7.** Make your system dynamic loader aware of the new libraries you installed</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;```bash</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;sudo ldconfig</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;```</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;**8.** Build Remmina.</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;```bash</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;mkdir ${HOME}/remmina/build</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;cd ${HOME}/remmina/build</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;# Note: `-DCMAKE_INSTALL_LIBDIR=/usr/lib64` is not required to successfully run Remmina,</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;#   but `/usr/lib64` is the proper location for the libraries; again, it is not required</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;#   at all when Remmina is installed to `/usr`</div><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;cmake3 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt -DCMAKE_INSTALL_LIBDIR=/usr/lib64 \</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;  -DCMAKE_PREFIX_PATH=/opt --build=build ..</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;make &amp;&amp; sudo make install</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;```</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;**9.** If Remmina is installed to a custom path (e.g. for use `/opt`), we need to create some symlinks in order to .</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;```bash</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;sudo mkdir -p /usr/share/icons/hicolor/scalable/panel /usr/share/icons/hicolor/apps</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;for old in /opt/share/applications/*desktop $(find /opt/share/icons -type f | grep &#39;svg$\|png$&#39;); do</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;   new=&quot;${old/opt/usr}&quot;</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;   sudo ln -s $old $new</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;done</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;```</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;**10.** Now you should be able to run Remmina with the following command or using the GUI.</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;```bash</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;remmina &amp;&gt; /dev/null &amp;</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;```</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;## Notes</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;### Remmina in the system tray on GNOME 3</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;Current GNOME Shell versions does not include system tray, therefore vanilla GNOME will not show the Remmina system tray icon and menu. Press &lt;kbd&gt;Super&lt;/kbd&gt;+&lt;kbd&gt;M&lt;/kbd&gt; to see the Remmina icon on the message bar. If you want to fix this, you could install either [KStatusNotifierItem/AppIndicator Support](https://extensions.gnome.org/extension/615/appindicator-support/).</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;Below is a guide how to install the extension. For more information on installing the `chrome-gnome-shell` , see the [documentation](https://wiki.gnome.org/Projects/GnomeShellIntegrationForChrome/Installation)</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;</div><div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;&lt;details&gt;</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;   &lt;summary&gt;&lt;b&gt;How to install [KStatusNotifierItem/AppIndicator Support](https://extensions.gnome.org/extension/615/appindicator-support/) extension&lt;/b&gt;&lt;/summary&gt;</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;This method installs the extension locally (i.e. for current user only).</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;1. Install `chrome-gnome-shell` package.</div><div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;</div><div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;```bash</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;sudo yum -y install chrome-gnome-shell</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;```</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;2. Install the browser extension. Go to [GNOME extension website](https://extensions.gnome.org) and click on _Click here to install browser extension_; or you can install it from [Firefox Browser Add-ons](https://addons.mozilla.org/en-US/firefox/addon/gnome-shell-integration/).</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;3. Install the [KStatusNotifierItem/AppIndicator Support](https://extensions.gnome.org/extension/615/appindicator-support/) extension by clicking on the toggle on that page (it must be on `on` position). Then confirm the installation.</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;4. Don&#39;t forget to re-login the GNOME. :smiley:</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;&lt;/details&gt;</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;### Remmina in the system tray on Xfce</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;&gt; :information_source: This might be outdated. If you know the current state of this issue or any workaround(s), open an [issue](https://gitlab.com/Remmina/Remmina/issues/new).</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;Xfce and other desktop environments without app indicator support, will not show you the system tray icon if you are executing Remmina from its compilation folder (e.g. `~/remmina`) because it contains a folder named `remmina`. For more infomation, see [Bug #1363277 on Launchpad](https://bugs.launchpad.net/libappindicator/+bug/1363277).</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;### Dependencies</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;1. If you are cloning the repositories, you need `git`.</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;2. FreeRDP dependencies:</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;```bash</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;# Official guide (src: https://github.com/FreeRDP/FreeRDP/wiki/Compilation [rhel based])</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;gcc cmake ninja-build openssl-devel libX11-devel libXext-devel libXinerama-devel \</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;  libXcursor-devel libXi-devel libXdamage-devel libXv-devel libxkbfile-devel \</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;  alsa-lib-devel cups-devel ffmpeg-devel glib2-devel libusb-devel</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;# We had to install these at least on CentOS 8, but they are probably required on CentOS 7 too;</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;#   otherwise the build failed</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;make gcc-c++ pulseaudio-libs-devel libXrandr-devel</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;# Recommended: these are required to build man pages</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;libxslt libxslt-devel docbook-style-xsl</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;# Recommended: for multimedia redirection, audio and video playback</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;gstreamer1-devel gstreamer1-plugins-base-devel</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;# Recommended: for some X11 addon</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;xorg-x11-server-utils</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;# Recommended: at build-time, FreeRDP states that this is &#39;required by virtual:world&#39;</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;cairo-devel</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;```</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;3. Remmina dependencies (besides FreeRDP and its dependencies):</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;```bash</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;atk-devel avahi-ui-devel avahi-ui-gtk3 cmake3 gnutls-devel gtk3-devel harfbuzz-devel \</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;  json-glib-devel libappindicator-devel libappindicator-gtk3 libappindicator-gtk3-devel \</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;  libgcrypt-devel libopenh264-devel libsecret-devel libSM-devel libsodium libsodium-devel \</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;  libsoup-devel libssh-devel libvncserver-devel libx264-devel libXtst-devel openh264 \</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;  openjpeg2-devel pango-devel vte291 vte291-devel webkitgtk4-devel xmlto</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;```</div></div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="_compilation-guide-for-_r_h_e_l_8md.html">Compilation-guide-for-RHEL.md</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>