Project

General

Profile

Install » History » Version 5

Matthieu Herrb, 2017-05-02 19:01
move3d repository moved

1 1 Jules Waldhart
h1. Install
2
3 2 Jules Waldhart
Two ways to install move3d are presented. We recommend to start with the fist one (robotpkg will automatically install the dependencies, then you will be able to compile developer versions outside robotpkg easily).
4
5
**Check the Dependencies appendix** bellow if you never installed move3d on your computer.
6
7
{{toc}}
8
9 1 Jules Waldhart
h2. From robotpkg
10
11
Please refer to the "openrobots wiki":https://www.openrobots.org/wiki/move3d.
12
13 2 Jules Waldhart
Note that it will **not** use the sources found here, but former ones (updated on a less frequent basis).
14 1 Jules Waldhart
15
h2. From latest sources
16
17
This repo is the one we use for publishing the latest developments.
18
19 2 Jules Waldhart
We assume you have setup "openrobots":https://openrobots.org already. If not, do it following the indications to install from robotpkg, or don't, but you'll need to tune everything (good understanding of UNIX and compilers required).
20
21 1 Jules Waldhart
Clone the corresponding projects onto your computer, e.g. in your "@src@" directory, git clone the following repos:
22
23
<pre>
24 5 Matthieu Herrb
git://redmine.laas.fr/laas/move3d/libmove3d.git
25
git://redmine.laas.fr/laas/move3d/hri.git
26
git://redmine.laas.fr/laas/move3d/planners.git
27
git://redmine.laas.fr/laas/move3d/studio.git
28 1 Jules Waldhart
</pre>
29
30 2 Jules Waldhart
Then create a build directory in each one, run cmake and make (see appendices for tuning):
31 1 Jules Waldhart
32 2 Jules Waldhart
<pre><code>
33
cd libmove3d #then hri, planners
34
mkdir build; cd build
35
cmake .. -DCMAKE_INSTALL_PREFIX=${ROBOTPKG_BASE} # According to want you want to do, you may need to add options here. Check before building to spare time.
36
         # you can add -DCMAKE_BUILD_TYPE=Debug to build with debug information
37
make install # we recommend to use the -jn option to use all your available cores for building (change the n to the number of cores, generally 4 or 8)
38
</code></pre>
39 1 Jules Waldhart
40 2 Jules Waldhart
Reproduce these steps for hri, and then planners.
41
For studio, you need to give some more parameters to cmake:
42
43
<pre>
44
cmake .. -DMOVE3D_QT=ON -DCMAKE_INSTALL_PREFIX=${ROBOTPKG_BASE}
45
</pre>
46
47 3 Jules Waldhart
h2. Needed data
48 1 Jules Waldhart
49 3 Jules Waldhart
Whatever the way of installing move3d you picked, it needs some specific data to run.
50
51
First of all the environment and robot descriptions are made in p3d file format. For now they are all located in one repo that you need to clone on your machine (by default in ~/openrobots/shared/assets) :
52
<pre>
53 1 Jules Waldhart
git://redmine.laas.fr/laas/users/jwaldart/move3d/assets.git
54 3 Jules Waldhart
</pre>
55 1 Jules Waldhart
56 3 Jules Waldhart
And then some more data, mainly configuration files, you have to clone (by default in ~/openrobots/data) :
57
<pre>
58
git://redmine.laas.fr/laas/users/jwaldart/move3d/data.git
59
</pre>
60 1 Jules Waldhart
61 4 Jules Waldhart
You also need to set the environment variable @HOME_MOVE3D@ to the path to the folder BioMove3d, e.g. (put this in your .bashrc or so):
62
<pre>
63
export HOME_MOVE3D=~/openrobots/data/BioMove3d
64
</pre>
65
66 1 Jules Waldhart
67
h2. Appendices
68 2 Jules Waldhart
69
h3. Dependencies
70
71
In any case, you will need the following packages (install via @apt-get install@). Missing some will cause following steps to ask you to install the packages.
72
73
<pre>
74
build-essential libx11-dev libxml2-dev libgl1-mesa-dev libglu-dev libxpm-dev glpk libgsl0-dev libgts-dev libqhull-dev libqt4-dev libqwt-dev libformsgl-dev libforms-dev swig tcl-dev tk-dev libboost-dev libboost-filesystem-dev libboost-iostreams-dev libboost-math-dev libboost-thread-dev freeglut3-dev libeigen3-dev liblog4cxx10-dev libjsoncpp-dev
75
</pre>
76
77
The list is based on a minimal ubuntu distribution (12.04), most of them are probably already installed on your computer.
78
79
You will also need nlopt. On ubuntu >=14.04, install via apt-get the package @libnlopt-dev@. On older versions, get the source code from "NLopt website":http://ab-initio.mit.edu/wiki/index.php/NLopt. You will need to build with some options:
80
<pre>
81
./configure --prefix=$ROBOTPKG_BASE --with-pic --enable-shared
82
make && make install
83
</pre>
84
85
h3. Tuning the configuration
86
87
You can tune the configuration by settings some parameters via cmake. Using @ccmake@ is a good GUI to do so. According to what you want to do or use move3d for, or what dependencies you want to use, you may need to tweak them.
88
89
h4. Boost on Ubuntu 12.04
90
91
If you are on Ubuntu 12.04 and installed boost from robotpkg like in previous section ("From robotpkg"), and have boost also installed on your machine, you will have to specify to cmake where to get the good version.
92
93
Add this to the cmake command of libmove3d-planners:
94
95
<pre>
96
-DBoost_INCLUDE_DIR=${ROBOTPKG_BASE}/include -DBoost_LIBRARY_DIRS=${ROBOTPKG_BASE}/lib -DBoost_THREAD_LIBRARY=${ROBOTPKG_BASE}/lib/libboost_thread-mt.so -DBoost_THREAD_LIBRARY_DEBUG=${ROBOTPKG_BASE}/lib/libboost_thread-mt.so -DBoost_THREAD_LIBRARY_RELEASE=${ROBOTPKG_BASE}/lib/libboost_thread-mt.so
97
</pre>
98
99
And this to the cmake command of move3d-studio:
100
<pre>
101
-DBoost_INCLUDE_DIR=${ROBOTPKG_BASE}/include -DBoost_LIBRARY_DIRS=${ROBOTPKG_BASE}/lib
102
</pre>
103
104
h4. ROS
105
106
If you are using ROS, and want to use move3d libraries inside ROS nodes (e.g. through "move3d_ros_lib":https://github.com/laas/move3d_ros_lib), you need to set the following options in libmove3d:
107
<pre>
108
USE_ROS_URDF=ON
109
USE_ROBOTMODELPARSER=OFF
110
</pre>
111
112
h4. URDF
113
114
If you don't use ROS but want to use URDF files inside move3d, you need to set in libmove3d:
115
<pre>
116
USE_ROBOTMODELPARSER=ON
117
</pre>
118
It will require one more dependency, found in "robotpkg/wip":http://robotpkg.openrobots.org/robotpkg-wip.html : robotModelParser-libs