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