Project

General

Profile

Linux setup » History » Version 14

Alexis Jeandet, 27/05/2016 06:18 PM

1 1 Alexis Jeandet
h1. Linux setup
2 1 Alexis Jeandet
3 1 Alexis Jeandet
{{>toc}}
4 1 Alexis Jeandet
5 2 Alexis Jeandet
*Please note that SocExplorer is still under development, so things are supposed to move, it can fail to build sometimes or be buggy. Feel free to send us some bug reports!*
6 1 Alexis Jeandet
7 10 Alexis Jeandet
*If you are using Fedora, you can directly install socexplorer from our repository "here":https://hephaistos.lpp.polytechnique.fr/repositories/Fedora/*
8 13 Alexis Jeandet
*Or alternatively "here":https://copr.fedorainfracloud.org/coprs/ajeandet/SocExplorer/*
9 4 Alexis Jeandet
10 1 Alexis Jeandet
h2. Prerequisites
11 1 Alexis Jeandet
12 12 Alexis Jeandet
All the next steps can be distribution dependent SocExplorer development is done on Fedora 23, but is should work with any other one, feedback are welcome!
13 1 Alexis Jeandet
14 1 Alexis Jeandet
* First you need a working linux machine with:
15 2 Alexis Jeandet
** *Qt5 sdk* installed on it plus all the developments packages for Qt. Remember also to install modules such as QtWebkit.
16 2 Alexis Jeandet
** *Python 2.6 or 2.7* with headers.
17 3 Alexis Jeandet
* Then you need to install *PythonQt*, a modified version for SocExplorer can be downloaded "here":https://hephaistos.lpp.polytechnique.fr/rhodecode/HG_REPOSITORIES/LPP/INSTRUMENTATION/USERS/JEANDET/PythonQt/archive/tip.zip
18 1 Alexis Jeandet
* To install PythonQt you just have to extract it somewhere, then from a terminal run:
19 1 Alexis Jeandet
<pre><code class="bash">
20 1 Alexis Jeandet
  qmake-qt5
21 1 Alexis Jeandet
  make 
22 1 Alexis Jeandet
  sudo make install
23 1 Alexis Jeandet
</code></pre>
24 1 Alexis Jeandet
25 1 Alexis Jeandet
h2. Building SocExplorer
26 1 Alexis Jeandet
27 1 Alexis Jeandet
* To build SocExplorer, once PythonQt is correctly build and installed you can get SocExplorer source code from code repository with this command:
28 1 Alexis Jeandet
<pre><code class="bash">
29 1 Alexis Jeandet
  hg clone https://hephaistos.lpp.polytechnique.fr/rhodecode/HG_REPOSITORIES/LPP/INSTRUMENTATION/SocExplorer SocExplorer
30 1 Alexis Jeandet
</code></pre>
31 1 Alexis Jeandet
You will get a SocExplorer directory with all the source code inside. To build it you just have to run:
32 1 Alexis Jeandet
<pre><code class="bash">
33 1 Alexis Jeandet
  cd SocExplorer
34 1 Alexis Jeandet
  qmake-qt5
35 1 Alexis Jeandet
  make  #note that to speedup the make step you can use "make -j N" to parallelize on N process(replace N with the number of cores you have).
36 1 Alexis Jeandet
37 1 Alexis Jeandet
</code></pre>
38 2 Alexis Jeandet
39 1 Alexis Jeandet
* Now you can install SocExplorer, it will install the SocExplorer binary plus some libraries and desktop icon in your system, just run:
40 1 Alexis Jeandet
<pre><code class="bash">
41 1 Alexis Jeandet
  sudo make install
42 1 Alexis Jeandet
  #this doesn't install the registers xml description file.
43 1 Alexis Jeandet
  mkdir -p ~/.SocExplorer/config
44 1 Alexis Jeandet
  cp ressources/Grlib.xml ~/.SocExplorer/config/Grlib.xml
45 1 Alexis Jeandet
</code></pre>
46 1 Alexis Jeandet
47 1 Alexis Jeandet
Affected folders are:
48 1 Alexis Jeandet
* /usr/bin for SocExplorer executables.
49 1 Alexis Jeandet
* QT_HEADERS_PATH/SocExplorer for SDK headers.
50 1 Alexis Jeandet
* QT_LIB_PATH for shared libraries.
51 5 Alexis Jeandet
* QT_LIB_PATH/SocExplorer/plugins for plugins.
52 1 Alexis Jeandet
* /usr/share/qtcreator/templates/wizards/SocExplorerPlugin for Qtcreator wizard.
53 1 Alexis Jeandet
* /usr/share/applications/ for desktop launcher.
54 5 Alexis Jeandet
* /usr/share/SocExplorer/ for icon and xml soc description files.
55 1 Alexis Jeandet
* /etc/SocExplorer for global config files.
56 2 Alexis Jeandet
57 2 Alexis Jeandet
Now you should have a working SocExplorer, you can continue to install plugins or start write your own plugins.
58 2 Alexis Jeandet
59 2 Alexis Jeandet
h2. Building SocExplorer LPP's Plugins
60 2 Alexis Jeandet
61 2 Alexis Jeandet
If you are here it assume that you have an updated and working version of SocExplorer. 
62 2 Alexis Jeandet
To get LPP's SocExplorer plugins you can either clone or download them from here":https://hephaistos.lpp.polytechnique.fr/rhodecode/HG_REPOSITORIES/LPP/INSTRUMENTATION/SocExplorerPlugins.
63 2 Alexis Jeandet
64 2 Alexis Jeandet
* To clone:
65 2 Alexis Jeandet
<pre><code class="bash">
66 2 Alexis Jeandet
  hg clone https://hephaistos.lpp.polytechnique.fr/rhodecode/HG_REPOSITORIES/LPP/INSTRUMENTATION/SocExplorerPlugins SocExplorerPlugins
67 2 Alexis Jeandet
</code></pre>
68 2 Alexis Jeandet
69 11 Alexis Jeandet
Then first you may want to build only the plugins you plan to use, for example the SpaceWire plugin rely on STAR-Dundee usb driver which isn't free so if you don't have it you can't use it. To disable a plugin you have to edit the top qmake project file "SocExplorer_Plugins.pro" and remove the plugin folder name inside or comment it. As example if we want to disable the SpwPlugin and the memcheckplugin:
70 2 Alexis Jeandet
71 2 Alexis Jeandet
The file was initially:
72 2 Alexis Jeandet
73 2 Alexis Jeandet
<pre><code class="bash">
74 2 Alexis Jeandet
TEMPLATE = subdirs
75 2 Alexis Jeandet
CONFIG   += ordered
76 2 Alexis Jeandet
77 2 Alexis Jeandet
78 2 Alexis Jeandet
SUBDIRS = \
79 2 Alexis Jeandet
    ahbuartplugin \
80 2 Alexis Jeandet
    ambaplugin \
81 2 Alexis Jeandet
    APBUARTPLUGIN \
82 2 Alexis Jeandet
    dsu3plugin \
83 2 Alexis Jeandet
    genericrwplugin \
84 2 Alexis Jeandet
    memctrlrplugin \
85 2 Alexis Jeandet
    memcheckplugin
86 2 Alexis Jeandet
87 2 Alexis Jeandet
unix:SUBDIRS +=  spwplugin
88 2 Alexis Jeandet
89 2 Alexis Jeandet
</code></pre>
90 2 Alexis Jeandet
91 2 Alexis Jeandet
Then it become:
92 2 Alexis Jeandet
93 2 Alexis Jeandet
<pre><code class="bash">
94 2 Alexis Jeandet
TEMPLATE = subdirs
95 2 Alexis Jeandet
CONFIG   += ordered
96 2 Alexis Jeandet
97 2 Alexis Jeandet
98 2 Alexis Jeandet
SUBDIRS = \
99 2 Alexis Jeandet
    ahbuartplugin \
100 2 Alexis Jeandet
    ambaplugin \
101 2 Alexis Jeandet
    APBUARTPLUGIN \
102 2 Alexis Jeandet
    dsu3plugin \
103 2 Alexis Jeandet
    genericrwplugin \
104 2 Alexis Jeandet
    memctrlrplugin 
105 2 Alexis Jeandet
106 2 Alexis Jeandet
</code></pre>
107 2 Alexis Jeandet
108 2 Alexis Jeandet
109 2 Alexis Jeandet
110 2 Alexis Jeandet
* Then as for SocExplorer you just need to run:
111 2 Alexis Jeandet
<pre><code class="bash">
112 2 Alexis Jeandet
  cd SocExplorerPlugins
113 2 Alexis Jeandet
  qmake-qt5
114 2 Alexis Jeandet
  make  #note that to speedup the make step you can use "make -j N" to parallelize on N process(replace N with the number of cores you have).
115 2 Alexis Jeandet
116 2 Alexis Jeandet
</code></pre>
117 2 Alexis Jeandet
118 6 Alexis Jeandet
* If the compilation succeed then you can install plugins, note that since socexplorer revision 65 the plugins are installed in /usr/lib(64)/SocExplorer/plugins by default so you need to be root.
119 2 Alexis Jeandet
<pre><code class="bash">
120 6 Alexis Jeandet
  sudo make  install 
121 2 Alexis Jeandet
</code></pre>