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