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