Salome HOME
Update documentation
[tools/install.git] / doc / readme.html
1 <!DOCTYPE html PUBLIC "-//w3c//dtd html 4.0 transitional//en">
2 <html>
3 <head>
4   <meta http-equiv="Content-Type"
5  content="text/html; charset=iso-8859-1">
6   <meta name="GENERATOR"
7  content="Mozilla/4.8 [en] (X11; U; Linux 2.4.18-14 i686) [Netscape]">
8   <meta name="Author"
9  content="Vadim SANDLER (v-sandler@opencascade.com)">
10   <title>SALOME Installation Wizard Help</title>
11   <meta content="Vadim SANDLER" name="author">
12 </head>
13 <body style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 229);"
14  alink="#ff0000" link="#0000ee" vlink="#551a8b">
15 &nbsp;
16 <center>
17 <table nosave="" width="100%">
18   <tbody>
19     <tr nosave="">
20       <td nosave="">
21       <h1><a href="http://www.opencascade.com"><img src="logocorp.png"
22  border="0" height="47" width="139"> </a></h1>
23       </td>
24       <td>
25       <center>
26       <h3><font size="+4"><font color="#000099">SALOME Installation
27 Wizard Help</font></font></h3>
28       </center>
29       </td>
30       <td>
31       <div align="right"><a href="http://www.opencascade.org/SALOME/"><img
32  src="application.png" border="0" height="47" width="109"> </a></div>
33       </td>
34     </tr>
35   </tbody>
36 </table>
37 </center>
38 <div align="right"><b><font color="#000099">updated for the version </font><font
39  color="#ff0000">3.2.0</font></b></div>
40 <hr>
41 <ul>
42   <li> <a href="#install_from_wizard">Installing products with the
43 Installation Wizard<br>
44     </a></li>
45   <ul>
46     <li><a href="#gui_mode">GUI mode</a></li>
47     <li><a href="#batch_mode">Batch mode</a></li>
48     <li><a href="#env_files">Environment files</a><br>
49     </li>
50   </ul>
51   <li> <a href="#check_version_proc">Notes on check products version
52 procedure</a></li>
53   <li> <a href="#pick_up_env">Pick up the environment</a></li>
54   <li> <a href="#xml_files">Modifying XML configuration file</a></li>
55   <li> <a href="#new_products">Implementing installation scripts for
56 the new products</a></li>
57 </ul>
58 <h3>
59 <hr></h3>
60 <h3> <a name="install_from_wizard"></a>Installing products with the <font
61  color="#ff0000">Installation Wizard</font></h3>
62 The Installation Wizard can be launched in two modes: <span
63  style="font-weight: bold;">GUI </span>and <span
64  style="font-weight: bold;">batch</span>. <br>
65 The root directory of the Installation Wizard
66 contains Python script <span style="font-weight: bold;">runInstall</span>.
67 To run the Installation Wizard just type <b>runInstall</b> in the
68 terminal
69 window:<span style="font-weight: bold;"></span><span
70  style="font-weight: bold;"></span>
71 <p>[ python ] <b>runInstall </b>[options]<b><br>
72 </b></p>
73 <p>Without options this script will launch the SALOME Installation
74 Wizard in the default mode (GUI).<br>
75 The default mode can be overriden by using command line options. Each
76 option has short and long notations:<br>
77 </p>
78 <p><b>-g / --gui</b><br>
79 </p>
80 <div style="margin-left: 40px;">Runs the Installation Wizard in the
81 GUI
82 mode (this is default mode).<br>
83 </div>
84 <p><b>-b / --batch</b><br>
85 </p>
86 <div style="margin-left: 40px;">Runs the Installation Wizard in
87 command-line mode. <br>
88 </div>
89 <p><b>-f FILE / --file=</b><span style="font-weight: bold;">FILE<br>
90 </span></p>
91 <div style="margin-left: 40px;">The XML configuration file to be used
92 by
93 the
94 Installation Wizard.&nbsp; If this option is not used then the
95 installation script
96 tries
97 to define the <i>Linux </i>version and use the corresponding XML file
98 if it is present.
99 For
100 examle, for the <span style="color: rgb(0, 0, 153);">Linux Mandrake
101 10.1</span>&nbsp; the <b>config_Mandrake_10.1.xml</b>&nbsp;
102 file
103 will be used by default. If the appropriate file is not
104 found, the file <b>config.xml</b> will be used. This file refers to
105 the basic target platform
106 which is <span style="color: rgb(0, 0, 153);">Linux Mandrake 10.1</span>
107 for SALOME 3.0 and newer. If <span style="font-weight: bold;">config.xml</span>
108 file is
109 also not found, the warning message box is shown (in GUI mode) or
110 printed to the console (in batch mode) and the Installation Wizard
111 quits.<br>
112 </div>
113 <p> <b>-d DIR / --target=DIR</b><br>
114 </p>
115 <div style="margin-left: 40px;">The target directory SALOME platform
116 to
117 be installed to. If used, this option overrides the default target
118 directory, given in
119 the
120 configuration XML file (usually<span style="font-weight: bold;">
121 ${HOME}/salome_&lt;version&gt;</span>,
122 see
123 <a href="#xml_files">here</a> for more detail). <br>
124 </div>
125 <p><b>-t DIR / --tmp=DIR </b></p>
126 <div style="margin-left: 40px;">The directory, which is used for
127 temporary files. If used, this option overrides the default temporary
128 directory,
129 given in the
130 configuration xml file (usually <span style="font-weight: bold;">/tmp</span><span
131  style="font-weight: bold;"></span>, see <a
132  href="readme.html#xml_files">here</a> for more detail).<br>
133 </div>
134 <p><b>-h / --help</b><br>
135 </p>
136 <div style="margin-left: 40px;">Prints help information about available
137 options. <br>
138 </div>
139 <p></p>
140 <p>
141 <b>-v / --version</b><br>
142 </p>
143 <div style="margin-left: 40px;">Prints version information (<span
144  style="font-weight: bold;">Note: </span>this is the
145 Installation Wizard's version number, not of SALOME platform). <br>
146 </div>
147 <p>
148 </p>
149 <p>The installation procedure supports different <span
150  style="color: rgb(0, 0, 153);">Linux
151 </span>platforms
152 and installs various installation 3d-party prerequisite products which
153 are required by SALOME platform. As it was mentioned above, the basic
154 target platform for SALOME 3.0 and newer is <span
155  style="color: rgb(0, 0, 153);">Linux Mandrake 10.1</span>.<br>
156 The using of configuration XML files gives flexible way to modify the
157 list of products to be installed by the Installation Wizard without
158 changing program's source code. Just create your own XML configuration
159 file
160 and implement installation scripts for the prerequisite products you
161 need and then use this XML file with the Installation Wizard. This can
162 be done, for example, for some <span style="color: rgb(0, 0, 153);">Linux
163 </span>platform which is not supported directly by the Installation
164 Wizard. See <a href="#xml_files">Modifying XML configuration file</a>
165 and <a href="#new_products">Implementing installation scripts for the
166 new products</a> sections for more information. </p>
167 <h3 style="margin-left: 40px;"> <a name="gui_mode"></a>GUI mode<br>
168 </h3>
169 <p>The <font color="#ff0000">Installation Wizard</font>'s GUI wizard
170 was developed
171 with
172 using of the <span style="color: rgb(0, 0, 153);">Trolltech's </span><span
173  style="font-weight: bold;"><span style="color: rgb(0, 0, 153);">Qt
174 3.0.5</span> </span>toolkit. After launching the Installation Wizard
175 in the GUI mode the wizard window is shown to the user. This wizard
176 guides the user through several subsequent pages. To navigate between
177 the pages use <i>"Next"</i> and <i>"Back"</i>
178 buttons in the
179 lower part of the wizard window. <i>"Cancel"</i> button closes the
180 wizard
181 window&nbsp;and quits the installation procedure after user's
182 confirmation. <i>"Help"</i> button opens an additional window to show
183 the help information . </p>
184 <p>The first "<span style="font-style: italic;">Introduction"</span>
185 page is shown at the <a href="#IntroPage">Figure 1</a>. Skip this page
186 by pressing <i>"Next"</i>
187 button:
188 </p>
189 <center><a name="IntroPage"></a><br>
190 <img alt="Intro page" src="intropage.png"
191  style="width: 586px; height: 347px;">
192 <p><b>Figure 1:</b> "Introduction" page</p>
193 </center>
194 <p>In the second page you are proposed to enter the target directory
195 where the SALOME platform should be installed to. You can also press <i>"Browse..."</i>
196 button and choose the destination folder using standard browse
197 directory dialog box. <br>
198 If the directory you want to install products does not exist you will
199 be prompted to confirm directory creation. If you type wrong directory
200 path, or if you have no permission for the directory you use, the
201 corresponding message box will be shown.<br>
202 </p>
203 <p>In GUI mode the Installation Wizard provides two different options
204 to install the SALOME platform: <span style="font-weight: bold;">basic</span>
205 (which is default) and
206 <span style="font-weight: bold;">advanced.</span> In the <span
207  style="font-weight: bold;">basic</span> mode the
208 user should enter only the target installation
209 directory. All other installation options are taken from the XML
210 configuration file (see <a href="#Product_page1">Fig.2</a>):<br>
211 </p>
212 <center><a name="Product_page1"></a><br>
213 <img alt="Intro page" src="productpage1.png"
214  style="width: 586px; height: 347px;">
215 <p><b>Figure 2:</b> "Installation settings"
216 </p></center>
217 <p>To switch to the <span style="font-weight: bold;">advanced</span>
218 option, click <i>"More..."</i> button (see <a href="#ProductPage2">Fig.3</a>
219 ).</p>
220 <p>In the advanced mode you have the possibility to select products to
221 be installed. Each product can
222 have several options of installation: you have a possibility to use
223 native product (provided with Linux distribution and installed in the
224 system folders), install already precompiled binaries, build product
225 from the sources or not install it at all. Possible options and default
226 option are taken from the XML configuration file. You can mark the
227 products you want to install by clicking the corresponding
228 radiobuttons in the list view in the left part of the page. <br>
229 Note, that
230 some products can be installed only together with other products (or
231 these prerequisite products should be already installed on your
232 computer). The installation procedure
233 has a special feature to automatically mark these products in the list
234 view.
235 For example, in order to install <b><i>PyQt</i></b> it's necessary to
236 have
237 <b><i>gcc, Python</i></b>,<b><i> Qt</i></b> and <b><i>Sip</i></b>
238 installed.
239 Therefore all these products will be also turned on when you check on <b><i>PyQt</i></b>.
240 This feature can be switched off by clicking <i>"Auto set
241 prerequisites products"</i> checkbox. Turn on this checkbox if you
242 want all prerequisite products to be automatically checked when you
243 select some product to be installed. Turn off this checkbox if you
244 want to disable this feature.<br>
245 </p>
246 <center><a name="ProductPage2"></a><br>
247 <img src="productpage.png" alt="Products page"
248  style="width: 586px; height: 544px;">
249 <p><b>Figure 3:</b> "Installation settings" page in the 'advanced' mode</p>
250 </center>
251 <p>If you want to use native products (like <span
252  style="font-weight: bold;">gcc</span>, <span
253  style="font-weight: bold;">tcl</span>, etc.), select <i>"use native" </i>option.
254 <br>
255 Special button in the right part of the page - <i>"Unselect All" </i>-
256 allows to reset quickly all products to the <i>"not install"</i>
257 state. <br>
258 </p>
259 <p>There are also two checkboxes on this page: <i>"SALOME sources"</i>
260 and <i>"SALOME binaries"</i>.
261 These three-state checkboxes allow quick selecting/unselecting SALOME
262 modules sources/binaries packages
263 for the installation.</p>
264 <p>The box at the right side of the page displays the information about
265 currently highlighted product: name, version and short description,
266 required
267 disk space, disk space required for temporary files, list of
268 prerequisites (this information is
269 provided in the XML file) and current user
270 choice.
271 </p>
272 The <i>"Total disk space required:"</i> field displays how much
273 disk space on the hard drive is required for installation of selected
274 products. <br>
275 <p><b>Note: </b>Please, take into account that displayed amount of
276 required disk space is approximate and may differ when you install
277 products on your hard drive. </p>
278 <p>The installation procedure uses a special directory to store
279 temporary files. The <i>"Space for temporary files:"</i> field shows
280 the information about required disk space on the hard drive for
281 extracting and compiling of the selected products. You can change the
282 temporary directory - just type path
283 to the folder you want to use or click on the corresponding <i>"Browse..."</i>
284 button. <br>
285 <span style="font-weight: bold;">Note:</span> actually, temporary files
286 are stored not directly in the directory entered by user. The
287 Installation
288 Wizard creates in this directory an additional folder named
289 something like INSTALLWORK<span style="font-weight: bold;">XXXXX</span>
290 where XXXXX is unique number. This allows to launch several
291 Installation Wizards simultaneously. This temporary directory is
292 removed automaticaly when the installation finishes.<br>
293 </p>
294 <p>The installation procedure also checks available disk space. If
295 there is no
296 enough disk space on your hard drive you will see the corresponding
297 error message box. </p>
298 <p><b>Note: </b>Unfortunately, the configure procedure has a very
299 annoying bug under Linux platform. The directory should be obligatory
300 entered without spaces. For example, the configure procedure for <b><i>gcc</i></b>
301 won't
302 work if you pass the following parameter: <i>--prefix="/New Folder 1"</i>.
303 <b>Therefore you are strongly recommended not to use directory names
304 containing
305 spaces.</b> </p>
306 <p>To proceed further click <i>"Next"</i> button. At this moment
307 program
308 will make some tests to check installation settings: if there is enough
309 disk
310 space on the hard drive, check for native products installation,
311 dependencies
312 (prerequisites) for each product you have selected to be
313 installed.
314 If any test fails you will see the corresponding warning message box.
315 Otherwise
316 the wizard will proceed to the next page: </p>
317 <center>
318 <a name="ChoicePage"></a><br>
319 <img src="choicepage.png" alt="Choice page"
320  style="width: 586px; height: 544px;">
321 <p><b>Figure 4:</b> "Check your choice" page</p>
322 </center>
323 <p>This page summarizes the installation options you've made on the
324 previous pages. You can check again your choice and change it if
325 necessary by getting back to previous page. <br>
326 When you are sure that everything is OK, press <i>"Next"</i> button to
327 follow to the <a href="#ProgressPage">next page</a>. </p>
328 <center><a name="ProgressPage"></a><br>
329 <img alt="Progress page" src="progresspage1.png"
330  style="width: 586px; height: 366px;"><br>
331 <p><b>Figure 5:</b> "Installation progress" page</p></center>
332 <div style="text-align: left;">To start installation of the selected
333 products click <i>"Start"</i>
334 button. It launches the shell installation script and you will be able
335 to see the output of the script in the topmost dialog's frame. If any
336 errors
337 occur during the installation progress the corresponding messages
338 will be printed to the log window in the bold red font.<br>
339 </div>
340 <div style="text-align: left;">It is possible at any time to break the
341 installation by pressing <span style="font-style: italic;">"Stop"</span>
342 button. Then you can get back to the previous pages if you wish to
343 change installation settings or restart installation by pressing again <span
344  style="font-style: italic;">"Start"</span> button.<br>
345 </div>
346 <p style="text-align: left;"><span style="font-weight: bold;">Note:</span>
347 in the current
348 implementation it is not possible to resume stopped installation
349 process; it will be re-started from the very beginning. <br>
350 </p>
351 <center><a name="ProgressPage1"></a><br>
352 <img alt="Progress page" src="progresspage.png"
353  style="width: 586px; height: 366px;">
354 <p><b>Figure 6:</b> "Installation progress" page: installation in
355 progress</p></center>
356 <p>The <i>"Installation Status"</i> frame window shows you the
357 progress of installation. "<font color="#ff0000">Waiting</font>" status
358 means that installation of this product has not been started
359 yet. The product currently being installed is marked as "<font
360  color="#ff9900">Processing</font>".
361 All installed products have "<font color="#33ff33">Completed</font>"
362 status. </p>
363 <p>You can abort installation and close the installation procedure
364 using
365 <i>"Cancel"</i> button. <br>
366 <span style="font-weight: bold;">Note:</span> this button sends the
367 signal "SIGTERM" to the shell
368 script.
369 The script tries to clear all temporary
370 files.
371 The process of removing temporary files can take some time, so the
372 installation
373 wizard will wait 3 seconds before closing. </p>
374 <p>At the end of installation (all selected products have been
375 installed
376 successfully) you can go back to the previous pages to start a new
377 installation
378 or click <i>"Next"</i> button to go the Readme page: </p>
379 <center>
380 <a name="readmepage"></a><br>
381 <img alt="Read page" src="readmepage.png"
382  style="width: 586px; height: 486px;">
383 <p><b>Figure 7:</b> "Finish installation" page</p>
384 </center>
385 <p>In this page you can read important information about the
386 Instalation
387 Wizard itself and some tips: how to run and test SALOME or how to
388 build
389 SALOME from the sources. This is the contents of the README file which
390 you
391 can find in the root directory of the Installation Wizard. <br>
392 You can also launch SALOME Desktop from this page by clicking <i>"Launch
393 SALOME" </i>button.<br>
394 </p>
395 <h3 style="margin-left: 40px;"> <a name="batch_mode"></a>Batch mode<br>
396 </h3>
397 To launch the Installation Wizard in the batch mode use <span
398  style="font-weight: bold;">-b</span>
399 (<span style="font-weight: bold;">--batch</span>) parameter.<br>
400 In this mode the GUI wizard is not shown but all the installation
401 status is displayed directly in the console. In the batch mode user do
402 not have a possibility to change installation settings which are given
403 in the configuration file, except target and temporary directories
404 which can be overridden by the corresponding command line options (see <a
405  href="#install_from_wizard">here</a>).<br>
406 <center><a name="BatchMode"></a><br>
407 <img alt="Batch mode" src="batchmode.png"
408  style="width: 687px; height: 453px;">
409 <p><b>Figure 8:</b> Batch mode</p></center>
410 <h3 style="margin-left: 40px;"><a name="env_files"></a>Environment files</h3>
411 <p>During the process of installation the
412 script creates some
413 environment files to simplify procedure of launching SALOME. These
414 shell scripts set
415 all necessary environment variables for all products you have
416 installed.
417 To learn how installation scripts collects the environment, see&nbsp;<a
418  href="#pick_up_env"> here</a>. These files are: <b>salome.csh</b> + <b>salome.sh</b>
419 in the <span style="font-style: italic;"><span
420  style="font-weight: bold;">KERNEL module</span></span><b><i> sources</i></b>
421 and <span style="font-style: italic;"><span style="font-weight: bold;">KERNEL
422 module</span></span><b><i> binaries</i></b> root directories and <b>env_products.csh</b>
423 + <b>env_products.sh </b>and <span style="font-weight: bold;">env_build.csh
424 </span>+ <span style="font-weight: bold;">env_build.sh</span> in the
425 target directory.<br>
426 </p>
427 <span style="font-weight: bold;">Note:</span> there is some difference
428 betwen these files: <span style="font-weight: bold;">env_build.*</span>
429 files are optimized to
430 be used for the building of SALOME modules from sources (see <span
431  style="font-weight: bold;">README </span>file provided with the
432 installation procedure on th CD). The <span style="font-weight: bold;">env_products.*</span>
433 (and<span style="font-weight: bold;"> salome.*</span>) files are
434 optimized for
435 the SALOME launching. The behavior is defined by the environment
436 variable<span style="font-weight: bold;"> </span><b>ENV_FOR_LAUNCH</b>
437 which is set to 0 in env_build.* files and to 1 in env_products.*
438 (salome.*) files.<br>
439 <br>
440 <hr>
441 <h3><a name="check_version_proc"></a>Notes on<font color="#ff0000">
442 check products version</font> procedure</h3>
443 Unfortunately under Linux platform there is no exact algorithm to
444 identify the product's version. The information in this section gives
445 an idea how the
446 version is checked for the native/preinstalled products (this
447 information refers to the base platform <span
448  style="color: rgb(0, 0, 153);">Linux Mandrake
449 10.1</span>; and the same algorithms are used for other platforms). <br>
450 The general rule for all products is that the path to the binaries
451 should be set via <span style="font-weight: bold;">PATH</span>
452 environment variable, path to the libraries should be set via <span
453  style="font-weight: bold;">LD_LIBRARY_PATH</span> variable and the
454 python modules should be available via <span style="font-weight: bold;">PYTHONPATH</span>
455 variable.<br>
456 <span style="font-weight: bold;">Note:</span> the information given in
457 this section refers to the prerequisite products for SALOME version
458 3.2.0.<br>
459 <ul>
460   <li>gcc 3.4.1<br>
461   </li>
462 </ul>
463 Version number is checked by <span style="font-weight: bold;">gcc
464 -dumpversion</span> command. <span style="font-weight: bold;">gcc</span>
465 executable should be in the <span style="font-weight: bold;">PATH</span>
466 environment variable. Version should
467 be equal to the "3.4.1". It is recommended to use native gcc on
468 Mandrake 10.1.<br>
469 <ul>
470   <li>tcl/tk 8.4.5</li>
471 </ul>
472 Version number for <span style="font-weight: bold;">tcl/tk</span> can
473 be found in tclConfig.sh and tkConfig.sh files (<span
474  style="font-weight: bold;">TCL_VERSION</span> and <span
475  style="font-weight: bold;">TK_VERSION</span> variables
476 correspondingly). Version number should be equal to "8.4" (release
477 number is not checked). <br>
478 Set <span style="font-weight: bold;">TCLHOME</span> environment
479 variable to the root directory of tcl/tk installation.<br>
480 It is recommended to use native tcl/tk on Mandrake 10.1. <span
481  style="font-weight: bold;"></span>
482 <ul>
483   <li>boost 1.31.0</li>
484 </ul>
485 Version number is defined by <span style="font-weight: bold;">version.hpp</span>
486 file which is part of the boost distribution. This file defines <span
487  style="font-weight: bold;">BOOST_VERSION</span> macro which should be
488 equal to the "103100". In addition the existence of boost libraries is
489 checked. <br>
490 Set <span style="font-weight: bold;">BOOSTDIR</span>
491 environment variable if you have preinstalled version of
492 boost.<br>
493 <ul>
494   <li>Python 2.3.4</li>
495 </ul>
496 Version number is checked by <span style="font-weight: bold;">python -V</span>
497 command. <span style="font-weight: bold;">python</span> executable
498 should be in the <span style="font-weight: bold;">PATH</span>
499 environment variable. Version number should be equal to "2.3.4". It is
500 recommended to use native Python on
501 Mandrake 10.1.<br>
502 Set <span style="font-weight: bold;">PYTHONHOME</span> environment
503 variable if you have preinstalled version of Python.<br>
504 <ul>
505   <li>Swig 1.3.24</li>
506 </ul>
507 Version number is checked by <span style="font-weight: bold;">swig
508 -version</span> command. <span style="font-weight: bold;">swig</span>
509 executable should be in the <span style="font-weight: bold;">PATH</span>
510 environment variable. Version number should be equal to "1.3.24".<br>
511 <ul>
512   <li>Qt 3.3.3</li>
513 </ul>
514 Version number is defined by <span style="font-weight: bold;">qglobal.h</span>
515 file which is part of the Qt distribution. This file defines <span
516  style="font-weight: bold;">QT_VERSION_STR</span> macro which should be
517 equal to "3.3.3". It is recommended to use native Qt on Mandrake 10.1.<br>
518 Set <span style="font-weight: bold;">QTDIR</span> environment
519 variable if you
520 have preinstalled version of qt.<br>
521 <ul>
522   <li>msg2qm</li>
523 </ul>
524 <span style="font-weight: bold;">msg2qm</span> is Qt tool which is used
525 to
526 convert text *.po files to *.qm resource files. Unfortunately this tool
527 is not included to the Linux distribution and provided only in Qt
528 sources
529 package. This is the reason why this tool is suppplied with the SALOME
530 Installation Wizard.<br>
531 There is no way to check the version number of msg2qm tool. Just set <span
532  style="font-weight: bold;">MSG2QM_ROOT</span> environment
533 variable if you have preinstalled
534 version of msg2qm tool
535 <ul>
536   <li>Open CASCADE 6.1.0</li>
537 </ul>
538 Version number is defined by <span style="font-weight: bold;">Standard_Version.hxx</span>
539 file which is part of the Open CASCADE distribution. This file defines <span
540  style="font-weight: bold;">OCC_VERSION_MAJOR,</span> <span
541  style="font-weight: bold;">OCC_VERSION_MINOR</span> and <span
542  style="font-weight: bold;">OCC_VERSION_MAINTENANCE</span> macros which
543 should refer to version 6.1.0.<br>
544 Set <span style="font-weight: bold;">CASROOT</span> environment
545 variable if you have preinstalled version of Open CASCADE.<br>
546 <ul>
547   <li>qwt 4.2.0/0.4.2</li>
548 </ul>
549 Version number is defined by <span style="font-weight: bold;">qwt_global.h</span>
550 file which is part of the qwt distribution. This file defines <span
551  style="font-weight: bold;">QWT_VERSION_STR</span> macro which should
552 be
553 equal to "4.2.0".<br>
554 Set <span style="font-weight: bold;">QWTHOME</span> environment
555 variable if you
556 have preinstalled version of qwt.<br>
557 <ul>
558   <li>hdf 5-1.6.3</li>
559 </ul>
560 Version number is defined by <span style="font-weight: bold;">libhdf5.settings</span>
561 file which is part of the <span style="font-weight: bold;">hdf5</span>
562 distribution. Version should be equal to 1.6.3.<br>
563 Set <span style="font-weight: bold;">HDF5HOME</span> environment
564 variable if you
565 have preinstalled version of hdf5.<br>
566 <ul>
567   <li>med 2.2.3</li>
568 </ul>
569 Unfortunately there is no formal way to check med version
570 number. We check existense of libmed.so.1.0.2 library on the computer.
571 If you have problem with preinstalled version of med, please, reinstall
572 it.<br>
573 Set <span style="font-weight: bold;">MED2HOME</span> environment
574 variable if you
575 have preinstalled version of med.<br>
576 <ul>
577   <li>Vtk 4.2.6</li>
578 </ul>
579 Unfortunately there is no formal way to check VTK version
580 number. We just check existence of <span style="font-weight: bold;">libvtkCommon.so</span>
581 library on the computer and hope that it is of version we need. If you
582 have problem with preinstalled version of Vtk, please, reinstall it.<br>
583 Set <span style="font-weight: bold;">VTKHOME</span> environment
584 variable if you
585 have preinstalled version of Vtk.<br>
586 <ul>
587   <li>OmniORB 4.0.5, OmniORBpy 2.5, OmniNotify 2.1</li>
588 </ul>
589 We just check existence of some omniORB libraries and executable on the
590 computer, like <span style="font-weight: bold;">libomniORB4.so.0.5</span>,
591 <span style="font-weight: bold;">_omnipymodule.so.2.4</span>, <span
592  style="font-weight: bold;">libCOSNotify4.so.0.1</span> and <span
593  style="font-weight: bold;">notifd</span>.<br>
594 Set <span style="font-weight: bold;">OMNIORBDIR</span> environment
595 variable if
596 you have preinstalled version of omniORB products.<br>
597 <ul>
598   <li>sip 4.1</li>
599 </ul>
600 Version number is checked by <span style="font-weight: bold;">sip -V</span>
601 command. <span style="font-weight: bold;">sip</span> executable should
602 be in the <span style="font-weight: bold;">PATH</span>
603 environment variable. Version number should be equal to "4.1".<br>
604 Set <span style="font-weight: bold;">SIPDIR</span> environment
605 variable to the
606 directory where you have sip executable preinstalled.<br>
607 <ul>
608   <li>PyQt 3.13</li>
609 </ul>
610 Version number is defined by <span style="font-weight: bold;">pyqtconfig.py</span>
611 Python module file which is part of the <span
612  style="font-weight: bold;">PyQt</span> distribution. Version should be
613 equal to "3.13".<br>
614 Set <span style="font-weight: bold;">PYQTDIR</span>environment
615 variable if you
616 have preinstalled version of PyQt.
617 <ul>
618   <li>netgen 4.5</li>
619 </ul>
620 Unfortunarely we can't find anything about
621 netgen version. We just check if <span style="font-weight: bold;">NETGENROOT</span>
622 environment varible is set.<br>
623 Set <span style="font-weight: bold;">NETGENROOT</span>
624 environment
625 variable if you have preinstalled version
626 of netgen mesher.<br>
627 <ul>
628   <li>Numeric 23.7</li>
629 </ul>
630 Version number is checked by <span style="font-weight: bold;">python
631 -c
632 'import Numeric; print Numeric.__version__'</span> command. <span
633  style="font-weight: bold;">python</span> executable should be in the <span
634  style="font-weight: bold;">PATH</span>
635 environment variable and <span style="font-weight: bold;">Numeric</span>
636 module should be avaible for the Python (for example it should be in
637 the <span style="font-weight: bold;">PYTHONPATH</span> environment
638 variable). Version number should be equal to "23.7". If you have
639 problem with preinstalled version of Numeric 23.7, please,
640 reinstall it.<br>
641 Add the directory where&nbsp;<span style="font-weight: bold;"></span>you
642 have preinstalled version of Numeric
643 package to the <span style="font-weight: bold;">PYTHONHOME </span>environment
644 variable.<br>
645 <ul>
646   <li>graphviz 2.2.1</li>
647 </ul>
648 Version number is checked by <span style="font-weight: bold;">dot -V</span>
649 command. <span style="font-weight: bold;">dot</span> executable should
650 be in the <span style="font-weight: bold;">PATH</span>
651 environment variable. Version number should be equal to "2.2.1".<br>
652 Add <span style="font-weight: bold;">graphviz</span> bin directory to
653 the <span style="font-weight: bold;">PATH</span> environment variable.<br>
654 <ul>
655   <li>doxygen 1.4.6</li>
656 </ul>
657 Version number is checked by <span style="font-weight: bold;">doxygen
658 --version</span> command. <span style="font-weight: bold;">doxygen</span>executable
659 should be in the <span style="font-weight: bold;">PATH</span>
660 environment variable. Version number should be equal to "1.4.6".<br>
661 <ul>
662   <li><span style="font-weight: bold; color: rgb(0, 0, 153);">SALOME </span>module
663     <span style="font-weight: bold;"></span><span
664  style="font-weight: bold; color: rgb(0, 0, 153);">sources</span>
665 (3.2.0).</li>
666 </ul>
667 For each SALOME module sources package (KERNEL, GUI, GEOM, etc...) <span
668  style="font-weight: bold;">bin</span> directory contains file <span
669  style="font-weight: bold;">VERSION</span> which defines version
670 information.<br>
671 Set <span style="font-weight: bold;">&lt;MODULE&gt;_SRC_DIR</span>
672 environment variable for each SALOME <span style="font-weight: bold;">MODULE</span>
673 sources package installed (where <span style="font-weight: bold;">MODULE</span>
674 is KERNEL, GUI, GEOM, ...).<br>
675 <ul>
676   <li><span style="font-weight: bold; color: rgb(0, 0, 153);">SALOME </span>module
677     <span style="font-weight: bold;"></span><span
678  style="font-weight: bold; color: rgb(0, 0, 153);">binaries </span>(3.2.0)</li>
679 </ul>
680 For each SALOME module binaries package (KERNEL, GUI, GEOM, etc...) <span
681  style="font-weight: bold;">bin/salome</span> directory contains file <span
682  style="font-weight: bold;">VERSION</span> which defines version
683 information.<br>
684 Set <span style="font-weight: bold;">&lt;MODULE&gt;_ROOT_DIR</span>
685 environment variable for each SALOME <span style="font-weight: bold;">MODULE</span>
686 binaries package installed (where <span style="font-weight: bold;">MODULE</span>
687 is KERNEL, GUI, GEOM, ...).<br>
688 <p><b></b>If you have native products installed to different from
689 default
690 directories (not <b>/usr/bin</b>, <b>/usr/lib</b>...), it is
691 recommended to follow above mentioned instructions. Or you should
692 properly set <span style="font-weight: bold;">PATH</span> and <span
693  style="font-weight: bold;">LD_LIBRARY_PATH</span> variables <b><font
694  color="#ff0000">before</font></b>
695 starting the Installation Wizard. Otherwise
696 the installation script will fail to find preinstalled/native products.
697 </p>
698 <p><b>Note:</b> For some native products (e.g. gcc, Python) the rules
699 of version
700 checking are not so strict as described in the table. Only major and
701 minor numbers of version
702 should coincide with prerequisite. Newer version of the product can be
703 used also. If some native product has version number larger than that
704 required by
705 the
706 installation procedure, user will be prompted by the warning message
707 like this: <i>"You have
708 newer version of gcc installed
709 on your computer than that is required (3.4.1). Continue?"</i>. You can
710 press <i>"Yes"</i> button
711 to proceed with the installation but in this case you should be aware
712 of what you are doing.
713 SALOME binaries (including other products) are compiled with the
714 predefined prerequisites
715 and most likely can not be run successfully if these products are not
716 found.
717 This can be helpful only if you plan to build all products from
718 sources. <br>
719 </p>
720 <h3>
721 <hr></h3>
722 <h3> <a name="pick_up_env"></a>Pick up the <font color="#ff0000">environment</font></h3>
723 Please, read carefully the following information. This section
724 describes how the installation procedure generates the environment
725 scripts for the SALOME platform being installed.
726 <p>After installing of each product shell the script creates special
727 environment file for the product in its installation folder. The name
728 of
729 the file is generated
730 from
731 the name of product by the following scheme: <b>env_&lt;product_name&gt;.sh</b>
732 (for example <b>env_Vtk.sh </b>for the Vtk).
733 This file includes all necessary environment settings. At the final
734 step of the installation the script picks up all the
735 settings files and generate from them two common environment files: <b>salome.sh</b>
736 and <b>salome.csh
737 </b>for <span style="font-weight: bold;">bash</span> and <span
738  style="font-weight: bold;">csh</span> shells correspondingly. Such
739 approach helps to save time
740 when reinstalling products and you may not to care about setting all
741 environment variables
742 manually to build/launch SALOME. What you need is just to source one of
743 these
744 environment files. </p>
745 <p>This concerns also those products which are not being installed.
746 For example, you install some SALOME binaries to the directory where
747 you have previously installed other products.&nbsp; Installation
748 procedure tries to collect environment files from the target
749 directory if it finds necessary products installed there. If some
750 product is not
751 found in the target directory the corresponding
752 section of <b>salome.sh/salome.csh</b> files will be skipped. <br>
753 For native products (like <i><b>gcc, tcl, etc...</b><b>)</b></i>
754 installation procedure tries to find them first using <b>PATH</b>
755 / <b>LD_LIBRARY_PATH</b> variables and then in the system default
756 directories (<b>/usr/bin, /usr/lib</b> etc., depending on the product).
757 </p>
758 <p>In any case you may edit <b>salome.*</b> files after installation
759 procedure finishes, if you want.<br>
760 <span style="font-weight: bold;"><br>
761 Note:</span> as it was mentioned <a href="#env_files">above</a> there
762 are another environment files which
763 are generated by the installation procedure: <span
764  style="font-weight: bold;">env_products.csh</span> + <span
765  style="font-weight: bold;">env_products.sh</span> and <span
766  style="font-weight: bold;">env_build.csh</span> + <span
767  style="font-weight: bold;">env_build.sh</span>. These files can be
768 found in the target installation root directory.<br>
769 </p>
770 <hr>
771 <h3><a name="xml_files"></a>Modifying <font color="#ff0000">XML</font>
772 configuration <font color="#ff0000">file</font></h3>
773 <font color="#000000">You can create your own XML configuration file.
774 The Installation Wizard then can take it as command line argument to
775 provide list of products you want to install with it. The list of
776 products and some another settings for the Installation Wizard are
777 provided in the XML file. The default file which Installation Wizard
778 looks
779 for if no command line arguments are given, is <b>config.xml</b>.<br>
780 This
781 section describes the structure of the configuration file.</font> <br>
782 <font color="#000000">XML tags are in bold blue, optional sections/tags
783 are in brackets.</font>
784 <font face="Courier">
785 <p><b><font color="#000099">&lt;document&gt;</font></b>
786 <br>
787 <font color="#000000"><b>&nbsp;&nbsp;&nbsp; </b>[</font><b><font
788  color="#000099"> &lt;config</font></b><font color="#000000">
789 [ version=&lt;install_wizard_version&gt; ]</font> <br>
790 <font color="#000000">&nbsp;&nbsp;&nbsp; &nbsp;
791 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [
792 caption=&lt;install_wizard_caption&gt; ]</font> <br>
793 <font color="#000000">&nbsp;&nbsp;&nbsp; &nbsp;
794 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [
795 copyright=&lt;install_wizard_copyright&gt;&nbsp; ]</font> <br>
796 <font color="#000000">&nbsp;&nbsp;&nbsp; &nbsp;
797 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [
798 license=&lt;install_wizard_license_info&gt; ]</font> <br>
799 <font color="#000000">&nbsp;&nbsp;&nbsp; &nbsp;
800 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [ os=&lt;target_platform&gt;
801 ]</font><b><font color="#000099"><br>
802 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /&gt;</font></b><font color="#000000"> <br>
803 &nbsp;&nbsp;&nbsp; ]</font> <br>
804 <font color="#000000"><b>&nbsp;&nbsp;&nbsp; </b>[ </font><b><font
805  color="#000099">&lt;path</font></b><font color="#000000">&nbsp;&nbsp;
806 [ targetdir=&lt;target_directory&gt; ]</font> <br>
807 <font color="#000000">&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;
808 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
809 [ tempdir=&lt;temp_directory&gt;&nbsp;&nbsp;&nbsp;&nbsp; ]</font><b><font
810  color="#000099"><br>
811 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /&gt; </font></b><font color="#000000"><br>
812 &nbsp;&nbsp;&nbsp; ]</font> <br>
813 <font color="#000000">&nbsp;&nbsp;&nbsp; [</font><b><font
814  color="#000099"> &lt;product</font></b><font color="#000000">&nbsp;
815 name=&lt;product_name&gt;</font> <br>
816 <font color="#000000">&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;
817 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
818 version=&lt;product_version&gt;</font> <br>
819 &nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; [
820 context=&lt;product_context&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
821 ]<br>
822 &nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; [
823 description=&lt;product_description&gt; ]<br>
824 <font color="#000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;
825 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
826 install=&lt;installation_mode&gt;</font> <br>
827 <font color="#000000">&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;
828 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
829 supported=&lt;supported_installation_modes&gt;</font> <br>
830 <font color="#000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;
831 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; disable=&lt;disable_flag&gt;<br>
832 &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; [
833 pickupenv=&lt;pickup_env_flag&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ]</font><font
834  color="#000000"><br>
835 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;
836 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
837 dependancies=&lt;list_of_prerequisites&gt;</font>&nbsp;<font
838  color="#000000"><br>
839 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;
840 &nbsp;&nbsp;&nbsp;&nbsp; installdiskspace=&lt;install_disk_space&gt;</font>
841 <font color="#000000"><br>
842 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;
843 &nbsp;&nbsp;&nbsp; temporarydiskspace=&lt;tmp_disk_space&gt;</font> <font
844  color="#000000"><br>
845 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;
846 &nbsp;&nbsp; script=&lt;installation_script_name&gt;</font><font
847  color="#000099"><br>
848 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /<b>&gt;</b></font><font color="#000000">
849 <br>
850 &nbsp;&nbsp;&nbsp; ]</font> <font color="#000000"><br>
851 &nbsp;&nbsp;&nbsp; [</font><b><font color="#000099"> &lt;product</font></b><font
852  color="#000000"> ... </font><font color="#000099"><br>
853 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /<b>&gt;</b></font><font color="#000000">
854 <br>
855 &nbsp;&nbsp;&nbsp; ]</font> <font color="#000000"><br>
856 &nbsp;&nbsp;&nbsp;<b> .</b></font><b><font color="#000099">..</font></b>
857 <b><font color="#000099"><br>
858 &lt;/document&gt;</font></b> </p>
859 </font>
860 <h4><font color="#000000">&lt;config&gt; section</font></h4>
861 <font color="#000000">This is optional section; it provides general
862 information Installation Wizard itself.<br>
863 <br>
864 Attributes:<br>
865 </font>
866 <ul>
867   <li> <font color="#000000"><b>version</b></font></li>
868 </ul>
869 <font color="#000000">The application version number to be shown in the
870 caption.</font>
871 <ul>
872   <li> <font color="#000000"><b>caption</b></font></li>
873 </ul>
874 <font color="#000000">The application main window caption - if this
875 string contains '%1' text the title will
876 contain
877 in this place the version number (see above).</font>
878 <ul>
879   <li> <font color="#000000"><b>copyright</b></font></li>
880 </ul>
881 <font color="#000000">The application
882 copyright information (shown in the first page).</font>
883 <ul>
884   <li> <font color="#000000"><b>license</b></font></li>
885 </ul>
886 <font color="#000000">The application license information (shown in the
887 first page).</font>
888 <ul>
889   <li> <font color="#000000"><b>os</b></font></li>
890 </ul>
891 <font color="#000000">This parameter defines the directory (relative
892 from ./Products/BINARIES) where the Installation Wizard will
893 search precompiled binaries packages. If this tag is not provided,
894 binaries packages are looked for in
895 the ./Products/BINARIES directory.</font>
896 <h4> <b><font color="#000000">&lt;path&gt; section</font></b></h4>
897 This is optional section; it defines default installation directories.<br>
898 <font color="#000000"><br>
899 Attributes:</font><br>
900 <ul>
901   <li> <font color="#000000"><b>targetdir</b></font></li>
902 </ul>
903 <font color="#000000">The target
904 directory - the path to the directory where products should be
905 installed.</font>
906 <ul>
907   <li> <font color="#000000"><b>tempdir</b></font></li>
908 </ul>
909 <font color="#000000">The temporary directory -
910 the path to the directory for the temporary files.</font>
911 <h4> <b>&lt;product&gt; section</b></h4>
912 This section describes product to be installed with the Installation
913 Wizard. XML file should include &lt;product&gt; section for each
914 product to be installed. The products appear in the tree view
915 and are installed in the order they are described in the configuration
916 file. It is recommended (but not obligatory) to define native products
917 at the top of the
918 list before all other products.<br>
919 <font color="#000000"><br>
920 Attributes:</font><br>
921 <ul>
922   <li> <font color="#000000"><b>name</b></font></li>
923 </ul>
924 <font color="#000000">The name of the product.</font>
925 <ul>
926   <li> <font color="#000000"><b>version</b></font></li>
927 </ul>
928 <font color="#000000">The version of the product.</font>
929 <ul>
930   <li> <font color="#000000"><b>description</b></font></li>
931 </ul>
932 The <font color="#000000">product </font><font color="#000000">description
933 (optional).</font>
934 <ul>
935   <li> <font color="#000000"><b>context</b></font></li>
936 </ul>
937 <font color="#000000">Context (optional). The possible values are <b>'salome
938 sources'</b>, <b>'salome
939 binaries'</b> and <b>'prerequisite'</b> (several context can be given
940 separated by ":" symbol).</font>
941 <ul>
942   <li> <font color="#000000"><b>supported</b></font></li>
943 </ul>
944 <font color="#000000">Supported modes of
945 installation. Several modes can be separated by comma. Possible value
946 are: <i>install sources</i>, <i>install binaries</i>, <i>use
947 native</i>. Installation script should contain the corresponding
948 functions
949 for each of the supported installation modes (see <a
950  href="#new_products">here</a>).</font>
951 <ul>
952   <li> <font color="#000000"><b>install</b></font></li>
953 </ul>
954 <font color="#000000">Default (starting)
955 installation mode.</font>
956 <ul>
957   <li> <font color="#000000"><b>disable</b></font></li>
958 </ul>
959 <font color="#000000">If this flag has 'true'
960 value, the corresponding product will not appear in the list of
961 products and will not be installed.</font>
962 <ul>
963   <li><b>pickupenv</b></li>
964 </ul>
965 This flag points that pickup environment
966 procedure
967 should be performed for this product. If this flag equal to 'true',
968 &nbsp;salome.sh
969 and salome.csh files will&nbsp; be created in the product's
970 installation
971 directory. Usually this option is set to true for SALOME KERNEL module
972 sources and binaries package. This is optional key, default value is
973 'false'<b>.</b><br>
974 <ul>
975   <li> <font color="#000000"><b>dependancies</b></font></li>
976 </ul>
977 <font color="#000000">List of prerequisite
978 products, which are necessary to build this product, separated by comma.</font>
979 <ul>
980   <li> <font color="#000000"><b>installdiskspace</b></font></li>
981 </ul>
982 <font color="#000000">Total amount
983 space (integer, in Kbytes), which product occupies on the hard drive
984 after the
985 installation.</font>
986 <ul>
987   <li> <font color="#000000"><b>temporarydiskspace</b></font></li>
988 </ul>
989 <font color="#000000">Disk space
990 (integer, in Kbytes) for the temporary files, which is necessary to
991 build the product from the sources.</font>
992 <ul>
993   <li> <font color="#000000"><b>script</b></font></li>
994 </ul>
995 <font color="#000000">The installation script name.
996 This script is in charge of the installation of the product. It is
997 called
998 automatically by the Installation Wizard when necessary from the main
999 program. See the <a href="#new_products">next
1000 section</a> for
1001 more information.</font><br>
1002 <b><br>
1003 Note:</b> If you add new products to be installed with Installation
1004 Wizard, you should also provide installation script for this product.
1005 See
1006 the next section for more details.
1007 <hr>
1008 <h3><a name="new_products"></a>Implementing <font color="#ff0000">installation
1009 scripts</font> for the new products</h3>
1010 When you want some product to be installed with the Installation
1011 Wizard, you should add it's description it <a href="#xml_files">in the
1012 configuration file</a> and create the installation script, following
1013 rules described in this section. <br>
1014 <br>
1015 There are some obligatory functions which should be implemented in this
1016 installation
1017 script. These functions are automatically called by master installation
1018 script
1019 or/and its GUI shell when it is necessary.<br>
1020 <font color="#000000">File <b>common.sh</b> contains some service
1021 functions
1022 which can be used in your installation script, like <b>make_env()</b>,<b>
1023 make_dir()</b>, <b>try_existing()</b>, <b>sort_path()</b>,<b>
1024 find_in_path()</b>,
1025 etc.</font>
1026 <ul>
1027   <li> <b>check_version()</b></li>
1028 </ul>
1029 This function allows to check the
1030 version of the product already installed on the computer. It should try
1031 to find product (native or preinstalled in the target directory) and
1032 check
1033 its version. This helps to avoid unnecessary reinstallation. This is
1034 internal
1035 function and is not called from the master installation script.<br>
1036 <ul>
1037   <li> <b><font color="#000000">try_native()</font></b></li>
1038 </ul>
1039 <font color="#000000">This function is
1040 called when <i>'use native' </i>installation mode is selected by the
1041 user. The function should try to find native version of the product and
1042 define possibility of its usage. It should create the environment file
1043 for the
1044 product in the temporary directory (see also description of <b>print_env(</b>)
1045 function). I</font><font color="#000000">t is not necessary to
1046 implement
1047 this function i</font><font color="#000000">f you do not provide native
1048 mode. installation.<br>
1049 </font>
1050 <ul>
1051   <li> <font color="#000000"><b>install_source()</b></font></li>
1052 </ul>
1053 <font color="#000000">This function is
1054 called when <i>'install sources</i>' installation mode is selected by
1055 the
1056 user. The function is responsible for the building of the product from
1057 the
1058 sources package. It should create the environment file for the product
1059 in the
1060 temporary
1061 directory (see also description of <b>print_env(</b>) function). </font><font
1062  color="#000000">I</font><font color="#000000">t is not necessary to
1063 implement
1064 this function i</font><font color="#000000">f you do not provide </font><font
1065  color="#000000">sources mode installation.</font>
1066 <ul>
1067   <li> <font color="#000000"><b>install_binary()</b></font></li>
1068 </ul>
1069 <font color="#000000">This function is
1070 called when <i>'install binaries'</i> installation mode is selected by
1071 the
1072 user. The function is responsible for the extracting of the product
1073 from
1074 the binaries package. It should create environment for the product in
1075 the
1076 temporary
1077 directory (see also description of <b>print_env(</b>) function).</font><font
1078  color="#000000"> I</font><font color="#000000">t is not necessary to
1079 implement
1080 this function i</font><font color="#000000">f you do not provide </font><font
1081  color="#000000">binaries</font><font color="#000000"> mode
1082 installation.</font><font color="#000000"> <br>
1083 </font>
1084 <ul>
1085   <li> <b>try_preinstalled()</b></li>
1086 </ul>
1087 <font color="#000000">This function
1088 is called when<i> 'not install'</i> installation mode is selected by
1089 the user. In this case script should inspect target directory to try to
1090 find already preinstalled product, pick up and check environment from
1091 there. See <a href="#pick_up_env">here</a> for more details.</font>
1092 <ul>
1093   <li> <font color="#000000"><b>print_env()</b></font></li>
1094 </ul>
1095 <font color="#000000">This function is in
1096 charge of creation environment script. It should create file with name </font><b>env_&lt;product_name&gt;.sh</b>
1097 in the temporary directory and then copy it into the product
1098 installation directory. The file should contain all necessary
1099 environment variables settings for the product. It will be collected
1100 during the 'pick-up-environment' procedure.
1101 <ul>
1102   <li><b>pickup_env()</b></li>
1103 </ul>
1104 This procedure corresponds <b>pickupenv</b>
1105 tag
1106 of the configuration xml file (see previous section). It should call <b>make_env</b>
1107 procedure to perform pick-up environment procedure for the product.<br>
1108 <br>
1109 <font color="#000000">The calling signature of the product installation
1110 script is following:</font> <br>
1111 <b><font color="#000000">&lt;product_script_name&gt;
1112 &lt;function_name&gt; &lt;temp_folder&gt; &lt;products_directory&gt;
1113 &lt;target_directory&gt;
1114 &lt;dependancies&gt; &lt;product_name&gt;</font></b>
1115 <p><font color="#000000">where</font> <br>
1116 </p>
1117 <p><font color="#000000"><b>&lt;product_script_name&gt;</b> -
1118 installation
1119 script name (described in configuration xml file);</font> <br>
1120 <font color="#000000"><b>&lt;function_name&gt;</b> - the name of
1121 function, corresponding to the selected installation mode: <i>try_native,
1122 install_source, install_binary</i> or <i>try_preinstalled</i>;</font> <br>
1123 <font color="#000000"><b>&lt;temp_folder&gt;</b> - temporary files
1124 directory;</font> <br>
1125 <font color="#000000"><b>&lt;products_directory&gt;</b> - directory
1126 where the sources/binaries package can be found. You should provide
1127 sources package in the <i>&lt;Install_Wizard_root_directory&gt;/Products/SOURCES</i>
1128 directory and binaries package in the <i>&lt;InstallWizard_root_directory&gt;/Products/BINARIES/&lt;os_version&gt;</i>,
1129 where &lt;os_version&gt; is target platform description, which appears
1130 in the corresponding section of the <a href="#xml_files">configuration
1131 xml
1132 file</a>.</font> <br>
1133 <font color="#000000"><b>&lt;target_directory&gt;</b> - root target
1134 directory where product should be installed to;</font> <br>
1135 <font color="#000000"><b>&lt;dependancies&gt;</b> - single-quoted list
1136 of prerequisite products, separated by space;</font> <br>
1137 <font color="#000000"><b>&lt;product_name&gt; </b>- product name
1138 itself.</font> </p>
1139 <p><font color="#000000">Example:</font> <br>
1140 <i><font color="#000000">med-2.2.2.sh install_binary /tmp/work
1141 ./Products/BINARIES/Mandrake10.1 /usr/salome 'gcc Hdf' med</font></i> </p>
1142 <p><font color="#000000">Copy created script into the <i>&lt;Install_Wizard_root_directory&gt;/config_files</i>
1143 sub-directory where all installation scripts are stored. Installation
1144 Wizard
1145 will automatically search and call your script during the installation
1146 procedure.</font>
1147 </p>
1148 <hr> <br>
1149 <br>
1150 </body>
1151 </html>