forked from nojhan/paradiseo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathINSTALL
200 lines (137 loc) · 8.93 KB
/
INSTALL
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
==========================================================================================
INSTALLING PARADISEO
==========================================================================================
There is several ways to install ParadisEO, according to your needs.
==========================================================================================
WINDOWS
==========================================================================================
On Windows, and for compatibility reason, ParadisEO supply support only for MinGW.
Feel free to test with another compiler and to send us you report.
------------------------------------------------------------------------------------------
1) WITH EXE
------------------------------------------------------------------------------------------
The simpliest way ton install ParadisEO on Windows is to use the NSIS installer.
We would like to draw your attention on the fact that the PATH variable will not
be affected by the installation in order to allow anybody to install ParadisEO
without administration right. To have further information about how to use ParadisEO
in your project, see the tutorial on ParadisEO website (http://paradiseo.gforge.inria.fr/).
------------------------------------------------------------------------------------------
2) WITH CMAKE
------------------------------------------------------------------------------------------
You can also install ParadisEO using CMake. For that you must have a compiler installed,
and obviously cmake.
Then, follow UNIX instructions.
==========================================================================================
UNIX
==========================================================================================
------------------------------------------------------------------------------------------
1. WITH CMAKE
------------------------------------------------------------------------------------------
1.0 DEPENDENCIES
------------------------------------------------------------------------------------------
Optionnal
- Doxygen for documentation
- lcov for coverage
------------------------------------------------------------------------------------------
1.1 FAST INSTALLATION
------------------------------------------------------------------------------------------
After getting ParadisEO sources from repository, you have to create a build directory in order to keep your file tree clean.
> mkdir build
> cd build
To make the installation easier, ParadisEO propose you two installation types which are "Full" and "Min".
Full corresponds examples / lessons, tests and obviously libraries.
Min corresponds to libraries and headers and it is the standard behavior.
You can specified an installation type by adding the following declaration to cmake :
> cmake .. -DINSTALL_TYPE=full
> cmake .. -DINSTALL_TYPE=min
which is equivalent to
> cmake ..
Actually, by default the generator will be "Unix Makefiles" and cmake will try to look for a C++ compiler.
Be sure you have make installed, or choose an alternative according to your configuration.
To know available generators on your computer, type cmake -help. If you are on Windows and you use MinGW, you have to specify it explicitly by adding -G "MinGW Makefiles".
To compile ParadisEO simply compile sources using your generator. For instance, if you are using Unix Makefiles, type make.
------------------------------------------------------------------------------------------
1.2 BUILD TYPE
------------------------------------------------------------------------------------------
There are 2 types of build : Release or Debug.
To explicitly change the type, add -DDEBUG=true, otherwise, it will be the Release type.
------------------------------------------------------------------------------------------
1.3 COMPILERS
------------------------------------------------------------------------------------------
You can change the compiler used by CMake with the following options :
>-DCMAKE_C_COMPILER=/path/to/your/c/compiler
>-DCMAKE_CXX_COMPILER=/path/to/your/c++/compiler
------------------------------------------------------------------------------------------
1.4 INSTALLATION
------------------------------------------------------------------------------------------
WARNING : This require administration rights.
To install ParadisEO in standard paths (such as /usr/lib for lib and /usr/include for headers on UNIX-like) :
> make install
------------------------------------------------------------------------------------------
2. SPECIFIC MODULE
------------------------------------------------------------------------------------------
2.1 EO MODULE ONLY
------------------------------------------------------------------------------------------
If you want to compile and install only the Evolving Objects module, you can add to CMake the following option :
> cmake .. -DEO_ONLY
------------------------------------------------------------------------------------------
2.1 SMP MODULE
------------------------------------------------------------------------------------------
WARNING : The SMP module requires gcc 4.7 or higher. This is due to the fact that it uses the new C++ standard.
WARNING : At the moment, the SMP module does not work on Windows or Mac OS X since MinGW does not provide support for std::thread
and Apple does not supply a recent version of gcc (but you can try to compile gcc 4.7 by yourself).
To enable the compilation of the SMP module, just add -DSMP=true to CMake :
> cmake .. -DSMP=true
Depending on your distribution, you might have to give to CMake the path of gcc and g++ 4.7.
This is the case for Ubuntu 12.04 LTS for instance. Please, check installation guide on ParadisEO website for more details.
If you are in that case and assuming you have a standard path for gcc et g++ 4.7 :
> cmake .. -DSMP=true -DCMAKE_C_COMPILER=/usr/bin/gcc-4.7 -DCMAKE_CXX_COMPILER=/usr/bin/g++-4.7
------------------------------------------------------------------------------------------
2.2 PEO MODULE
------------------------------------------------------------------------------------------
WARNING : The PEO module requires libXML 2 and a MPI implementation such as MPICH2.
To enable the compilation of the PEO module, just add -DPEO=true to CMake :
> cmake .. -DPEO=true
------------------------------------------------------------------------------------------
2.3 EDO MODULE
------------------------------------------------------------------------------------------
WARNING : The EDO module requires either the Boost::ublas or the Eigen3 library.
To enable the compilation of the EDO module, just add -DEDO=true to CMake :
> cmake .. -DEDO=true
------------------------------------------------------------------------------------------
3. DOCUMENTATION
------------------------------------------------------------------------------------------
There is 2 ways to build ParadisEO documentation : module by module, or all the documentation.
Targets are :
doc for all documentations
doc-eo for building EO documentation
doc-mo for MO
doc-edo for MO
doc-moeo for MOEO
doc-smp for SMP
Each documentation are generated separatly in the module build folder.
For instance, after the generation of the MO documentation, you will find it in build/paradise-mo/doc.
------------------------------------------------------------------------------------------
4. LESSONS / EXAMPLES
------------------------------------------------------------------------------------------
Examples and lessons are generated by default.
If you want to disable lessons manually, you have to specify -DENABLE_CMAKE_TESTING=false to CMake.
If you want to build a specific lesson or example, you can check the list of available targets with make help.
All lessons are build on the same pattern : <module>Lesson<number>.
For instance, make moLesson4 will build the Lesson 4 from the MO module.
Easy, isn't it ?
------------------------------------------------------------------------------------------
5. TESTS
------------------------------------------------------------------------------------------
5.1 CTESTS
------------------------------------------------------------------------------------------
By performing tests, you can check your installation.
Testing is disable by default, except if you build with the full install type.
To enable testing, define -DENABLE_TESTING when you launch cmake.
To perform tests simply type ctest ou make test.
------------------------------------------------------------------------------------------
5.2 REPORTING
------------------------------------------------------------------------------------------
Feel free to send us reports about building, installation, tests and profiling in order to help us to improve compatibilty and installation process. Sending reports is very simple :
> ctest -D Experimental
WARNING : Reports are anonymous. CTest will also send informations about your configuration such as OS, CPU frequency, etc.