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

_compilation-guide-for-_cent_o_s-7_8md_source.html « public - gitlab.com/Remmina/remminadoc.gitlab.io.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: e1e830488e2e00d0eb55dbf615d94b4eea195094 (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-CentOS-7.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.3.6</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-_cent_o_s-7_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-CentOS-7.md</div>  </div>
</div><!--header-->
<div class="contents">
<a href="_compilation-guide-for-_cent_o_s-7_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;# Compilation guide for CentOS 7</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;These are the instructions for people who want to test the latest version of Remmina (`master` branch) on CentOS 7.</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;This guide was tested on CentOS 7 GNOME Desktop without any other package/group.</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 and run the following command</div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;cd ${HOME}/git/freerdp</div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;sudo rm $(cat install_manifest.txt)</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;# When `remmina` is installed from the CentOS repo, use this command to remove it</div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;sudo yum -y remove remmina*</div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;# When `remmina` is installed from source code, enter the `build` folder in `remmina` source code folder and run the following command</div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;cd ${HOME}/git/remmina/build</div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;sudo make uninstall</div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;# Finally, we need to delete the empty folders of `remmina` and `freerdp`</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;# This needs to be run for uninstallation of either programs</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;sudo rmdir $(find $(whereis freerdp remmina | grep -Po &quot;^[^:]*: \K.*$&quot;) -type d | tac)</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;```</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno">   33</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="l00034"></a><span class="lineno">   34</span>&#160;```bash</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;# epel: required for `openjpeg2-devel`, `openssl-devel`</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;sudo yum -y install epel-release</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;# rpmfusion-free-updates: required for `ffmpeg-devel`</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;sudo yum -y install https://download1.rpmfusion.org/free/el/rpmfusion-free-release-$(rpm -E %centos).noarch.rpm</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;```</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;**3.** Update your system and `yum` cache. This might require a reboot.</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;```bash</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;sudo yum -y update</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;```</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;**4.** Install dependencies of `freerdp` and `remmina`.</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;```bash</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;sudo yum -y install alsa-lib-devel avahi-ui-devel avahi-ui-gtk3 cmake cmake3 cups-devel \</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;ffmpeg-devel gcc gcc-c++ git glib2-devel gnutls-devel gstreamer1-devel \</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;gstreamer1-plugins-base-devel gtk3-devel json-glib-devel libappindicator-devel \</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;libappindicator-gtk3 libappindicator-gtk3-devel libgcrypt-devel libgnome-keyring-devel \</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;libSM-devel libsodium libsodium-devel libsoup-devel libssh-devel libvncserver-devel libX11-devel \</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;libXcursor-devel libXdamage-devel libXext-devel libXi-devel libXinerama-devel libxkbfile-devel \</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;libXrandr-devel libXtst-devel libXv-devel openjpeg2-devel openssl-devel pulseaudio-libs-devel \</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;telepathy-glib-devel vte3-devel webkitgtk4-devel xmlto</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;</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;**5.** Clone FreeRDP and Remmina repos. You may want to modify the `${HOME}/git/{freerdp,remmina}` paths and the folder names.</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;```bash</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;mkdir -p ${HOME}/git/{freerdp,remmina}</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;cd ${HOME}/git</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;git clone https://github.com/FreeRDP/FreeRDP.git freerdp</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;git clone https://gitlab.com/Remmina/Remmina.git remmina</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;</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;**6.** Build FreeRDP.</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;```</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;cd freerdp</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;mkdir build</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;cd build</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;# In the following line, the `DWITH_PULSE=ON` need to be included</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_PULSE=ON -DWITH_CUPS=on -DWITH_WAYLAND=off -DCMAKE_INSTALL_PREFIX:PATH=/usr ..</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;make &amp;&amp; sudo make install</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;</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;**7.** Make your system dynamic loader aware of the new libraries you installed</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;```bash</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;sudo ldconfig</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;```</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;**8.** Build Remmina.</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;```bash</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;mkdir ../../remmina/build</div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;cd ../../remmina/build</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;# cd ../../remmina</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;# git checkout v1.3.4</div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;# mkdir build</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;# cd build</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;cmake3 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_PREFIX_PATH=/usr --build=build ..</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;make &amp;&amp; sudo make install</div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;```</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;**9.** Now you should be able to run Remmina with the following command or using the GUI.</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;```bash</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;remmina &amp;&gt; /dev/null &amp;</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;```</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;NOTES for execution:</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;* 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 [AppIndicator Support](https://extensions.gnome.org/extension/615/appindicator-support/) or [TopIcons Plus](https://extensions.gnome.org/extension/1031/topicons/).</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;* [This might be outdated] 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. `~/git/remmina`) because it contains a folder named `remmina`. See [Bug #1363277 on Launchpad](https://bugs.launchpad.net/libappindicator/+bug/1363277)</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-_cent_o_s-7_8md.html">Compilation-guide-for-CentOS-7.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>