Project

General

Profile

Linux setup » History » Version 13

Alexis Jeandet, 16/03/2016 11:53 AM

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 1 Alexis Jeandet
Note also that we recently change from Qt4 to Qt5 so all the new SocExplorer code will be written for Qt5.
8 1 Alexis Jeandet
9 10 Alexis Jeandet
*If you are using Fedora, you can directly install socexplorer from our repository "here":https://hephaistos.lpp.polytechnique.fr/repositories/Fedora/*
10 13 Alexis Jeandet
*Or alternatively "here":https://copr.fedorainfracloud.org/coprs/ajeandet/SocExplorer/*
11 4 Alexis Jeandet
12 1 Alexis Jeandet
h2. Prerequisites
13 1 Alexis Jeandet
14 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!
15 1 Alexis Jeandet
16 1 Alexis Jeandet
* First you need a working linux machine with:
17 2 Alexis Jeandet
** *Qt5 sdk* installed on it plus all the developments packages for Qt. Remember also to install modules such as QtWebkit.
18 2 Alexis Jeandet
** *Python 2.6 or 2.7* with headers.
19 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
20 1 Alexis Jeandet
* To install PythonQt you just have to extract it somewhere, then from a terminal run:
21 1 Alexis Jeandet
<pre><code class="bash">
22 1 Alexis Jeandet
  qmake-qt5
23 1 Alexis Jeandet
  make 
24 1 Alexis Jeandet
  sudo make install
25 1 Alexis Jeandet
</code></pre>
26 1 Alexis Jeandet
27 1 Alexis Jeandet
h2. Building SocExplorer
28 1 Alexis Jeandet
29 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:
30 1 Alexis Jeandet
<pre><code class="bash">
31 1 Alexis Jeandet
  hg clone https://hephaistos.lpp.polytechnique.fr/rhodecode/HG_REPOSITORIES/LPP/INSTRUMENTATION/SocExplorer SocExplorer
32 1 Alexis Jeandet
</code></pre>
33 1 Alexis Jeandet
You will get a SocExplorer directory with all the source code inside. To build it you just have to run:
34 1 Alexis Jeandet
<pre><code class="bash">
35 1 Alexis Jeandet
  cd SocExplorer
36 1 Alexis Jeandet
  qmake-qt5
37 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).
38 1 Alexis Jeandet
39 1 Alexis Jeandet
</code></pre>
40 2 Alexis Jeandet
41 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:
42 1 Alexis Jeandet
<pre><code class="bash">
43 1 Alexis Jeandet
  sudo make install
44 1 Alexis Jeandet
  #this doesn't install the registers xml description file.
45 1 Alexis Jeandet
  mkdir -p ~/.SocExplorer/config
46 1 Alexis Jeandet
  cp ressources/Grlib.xml ~/.SocExplorer/config/Grlib.xml
47 1 Alexis Jeandet
</code></pre>
48 1 Alexis Jeandet
49 1 Alexis Jeandet
Affected folders are:
50 1 Alexis Jeandet
* /usr/bin for SocExplorer executables.
51 1 Alexis Jeandet
* QT_HEADERS_PATH/SocExplorer for SDK headers.
52 1 Alexis Jeandet
* QT_LIB_PATH for shared libraries.
53 5 Alexis Jeandet
* QT_LIB_PATH/SocExplorer/plugins for plugins.
54 1 Alexis Jeandet
* /usr/share/qtcreator/templates/wizards/SocExplorerPlugin for Qtcreator wizard.
55 1 Alexis Jeandet
* /usr/share/applications/ for desktop launcher.
56 5 Alexis Jeandet
* /usr/share/SocExplorer/ for icon and xml soc description files.
57 1 Alexis Jeandet
* /etc/SocExplorer for global config files.
58 2 Alexis Jeandet
59 2 Alexis Jeandet
Now you should have a working SocExplorer, you can continue to install plugins or start write your own plugins.
60 2 Alexis Jeandet
61 2 Alexis Jeandet
h2. Building SocExplorer LPP's Plugins
62 2 Alexis Jeandet
63 2 Alexis Jeandet
If you are here it assume that you have an updated and working version of SocExplorer. 
64 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.
65 2 Alexis Jeandet
66 2 Alexis Jeandet
* To clone:
67 2 Alexis Jeandet
<pre><code class="bash">
68 2 Alexis Jeandet
  hg clone https://hephaistos.lpp.polytechnique.fr/rhodecode/HG_REPOSITORIES/LPP/INSTRUMENTATION/SocExplorerPlugins SocExplorerPlugins
69 2 Alexis Jeandet
</code></pre>
70 2 Alexis Jeandet
71 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:
72 2 Alexis Jeandet
73 2 Alexis Jeandet
The file was initially:
74 2 Alexis Jeandet
75 2 Alexis Jeandet
<pre><code class="bash">
76 2 Alexis Jeandet
TEMPLATE = subdirs
77 2 Alexis Jeandet
CONFIG   += ordered
78 2 Alexis Jeandet
79 2 Alexis Jeandet
80 2 Alexis Jeandet
SUBDIRS = \
81 2 Alexis Jeandet
    ahbuartplugin \
82 2 Alexis Jeandet
    ambaplugin \
83 2 Alexis Jeandet
    APBUARTPLUGIN \
84 2 Alexis Jeandet
    dsu3plugin \
85 2 Alexis Jeandet
    genericrwplugin \
86 2 Alexis Jeandet
    memctrlrplugin \
87 2 Alexis Jeandet
    memcheckplugin
88 2 Alexis Jeandet
89 2 Alexis Jeandet
unix:SUBDIRS +=  spwplugin
90 2 Alexis Jeandet
91 2 Alexis Jeandet
</code></pre>
92 2 Alexis Jeandet
93 2 Alexis Jeandet
Then it become:
94 2 Alexis Jeandet
95 2 Alexis Jeandet
<pre><code class="bash">
96 2 Alexis Jeandet
TEMPLATE = subdirs
97 2 Alexis Jeandet
CONFIG   += ordered
98 2 Alexis Jeandet
99 2 Alexis Jeandet
100 2 Alexis Jeandet
SUBDIRS = \
101 2 Alexis Jeandet
    ahbuartplugin \
102 2 Alexis Jeandet
    ambaplugin \
103 2 Alexis Jeandet
    APBUARTPLUGIN \
104 2 Alexis Jeandet
    dsu3plugin \
105 2 Alexis Jeandet
    genericrwplugin \
106 2 Alexis Jeandet
    memctrlrplugin 
107 2 Alexis Jeandet
108 2 Alexis Jeandet
</code></pre>
109 2 Alexis Jeandet
110 2 Alexis Jeandet
111 2 Alexis Jeandet
112 2 Alexis Jeandet
* Then as for SocExplorer you just need to run:
113 2 Alexis Jeandet
<pre><code class="bash">
114 2 Alexis Jeandet
  cd SocExplorerPlugins
115 2 Alexis Jeandet
  qmake-qt5
116 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).
117 2 Alexis Jeandet
118 2 Alexis Jeandet
</code></pre>
119 2 Alexis Jeandet
120 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.
121 2 Alexis Jeandet
<pre><code class="bash">
122 6 Alexis Jeandet
  sudo make  install 
123 2 Alexis Jeandet
</code></pre>