1 <!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
\r
6 <title>Installation Wizard</title>
\r
7 <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
\r
8 <meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
\r
9 <link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
\r
11 if (navigator.appName !="Netscape")
\r
12 { document.write("<link rel='stylesheet' href='../default.css'>");}
\r
19 </style><style type="text/css">
\r
21 h1.whs1 { font-size:24pt; }
\r
22 hr.whs2 { float:aligncenter; }
\r
23 p.whs3 { background-color:#ffffff; }
\r
24 table.whs4 { x-cell-content-align:top; width:100%; border-left-style:Solid; border-left-color:#c0c0c0; border-left-width:0px; border-top-style:Solid; border-top-color:#c0c0c0; border-top-width:0px; border-right-style:Solid; border-right-color:#c0c0c0; border-right-width:0px; border-bottom-style:Solid; border-bottom-color:#c0c0c0; border-bottom-width:0px; border-spacing:0px; }
\r
25 col.whs5 { width:18.383%; }
\r
26 col.whs6 { width:81.617%; }
\r
27 tr.whs7 { x-cell-content-align:top; }
\r
28 td.whs8 { width:18.383%; padding-right:10px; padding-left:10px; border-left-color:#c0c0c0; border-top-style:Solid; border-top-color:#c0c0c0; border-right-style:Solid; border-right-color:#c0c0c0; border-bottom-style:Solid; border-bottom-color:#c0c0c0; border-bottom-width:1px; border-right-width:1px; border-left-width:1px; border-left-style:solid; border-top-width:1px; }
\r
29 p.whs9 { font-weight:bold; }
\r
30 td.whs10 { width:81.617%; padding-right:10px; padding-left:10px; border-top-style:Solid; border-top-color:#c0c0c0; border-right-style:Solid; border-right-color:#c0c0c0; border-bottom-style:Solid; border-bottom-color:#c0c0c0; border-bottom-width:1px; border-top-width:1px; border-right-width:1px; }
\r
31 td.whs11 { width:18.383%; padding-right:10px; padding-left:10px; border-left-color:#c0c0c0; border-right-style:Solid; border-right-color:#c0c0c0; border-bottom-style:Solid; border-bottom-color:#c0c0c0; border-bottom-width:1px; border-right-width:1px; border-left-width:1px; border-left-style:solid; }
\r
32 td.whs12 { width:81.617%; padding-right:10px; padding-left:10px; border-right-style:Solid; border-right-color:#c0c0c0; border-bottom-style:Solid; border-bottom-color:#c0c0c0; border-bottom-width:1px; border-right-width:1px; }
\r
33 td.whs13 { width:81.617%; padding-right:10px; padding-left:10px; border-right-color:#c0c0c0; border-right-style:Solid; border-bottom-style:Solid; border-bottom-color:#c0c0c0; border-bottom-width:1px; border-right-width:1px; }
\r
34 td.whs14 { width:18.383%; padding-right:10px; padding-left:10px; border-left-color:#c0c0c0; border-right-style:Solid; border-right-color:#c0c0c0; border-bottom-style:Solid; border-bottom-color:#c0c0c0; border-right-width:1px; border-left-width:1px; border-left-style:solid; border-bottom-width:1px; }
\r
35 p.whs15 { text-align:center; }
\r
36 img_whs16 { border:none; width:586px; height:390px; border-style:none; }
\r
37 p.whs17 { text-align:center; font-style:italic; }
\r
38 img_whs18 { border:none; width:586px; height:589px; border-style:none; }
\r
39 p.whs19 { background-image:url('../texture_horiz_ltbluebubbles.jpg'); }
\r
40 img_whs20 { border:none; width:36px; height:38px; float:none; border-style:none; }
\r
41 img_whs21 { border:none; width:35px; height:37px; float:none; border-style:none; }
\r
42 table.whs22 { background-repeat:repeat; background-attachment:scroll; width:100%; background-image:url('../texture_horiz_ltbluebubbles.jpg'); float:alignleft; x-cell-content-align:Center; border-spacing:0px; }
\r
43 tr.whs23 { x-cell-content-align:center; }
\r
44 th.whs24 { border-top-style:Solid; border-right-style:Solid; border-bottom-style:Solid; border-bottom-color:#000080; border-bottom-width:1px; border-right-color:#000080; border-right-width:1px; border-left-color:#000080; border-left-width:1px; border-left-style:Solid; border-top-color:#000080; border-top-width:1px; }
\r
45 p.whs25 { text-align:center; font-size:12pt; }
\r
46 th.whs26 { border-top-style:Solid; border-right-style:Solid; border-bottom-style:Solid; border-bottom-color:#000080; border-bottom-width:1px; border-right-color:#000080; border-right-width:1px; border-top-color:#000080; border-top-width:1px; }
\r
47 th.whs27 { border-top-style:Solid; border-right-style:Solid; border-bottom-style:Solid; border-bottom-color:#000080; border-bottom-width:1px; border-top-color:#000080; border-top-width:1px; border-right-color:#000080; border-right-width:1px; }
\r
48 td.whs28 { border-right-style:Solid; border-bottom-style:Solid; border-bottom-color:#000080; border-bottom-width:1px; border-right-color:#000080; border-right-width:1px; border-left-color:#000080; border-left-width:1px; border-left-style:Solid; }
\r
49 td.whs29 { border-right-style:Solid; border-bottom-style:Solid; border-bottom-color:#000080; border-bottom-width:1px; border-right-color:#000080; border-right-width:1px; }
\r
50 td.whs30 { x-cell-content-align:top; border-right-style:Solid; border-bottom-style:Solid; border-bottom-color:#000080; border-bottom-width:1px; border-right-color:#000080; border-right-width:1px; border-left-color:#000080; border-left-width:1px; border-left-style:Solid; }
\r
51 td.whs31 { x-cell-content-align:top; border-right-style:Solid; border-bottom-style:Solid; border-bottom-color:#000080; border-bottom-width:1px; border-right-color:#000080; border-right-width:1px; }
\r
52 td.whs32 { vertical-align:top; border-right-style:Solid; border-bottom-style:Solid; border-bottom-color:#000080; border-bottom-width:1px; border-right-color:#000080; border-right-width:1px; border-left-color:#000080; border-left-width:1px; border-left-style:Solid; }
\r
53 td.whs33 { vertical-align:top; border-right-style:Solid; border-bottom-style:Solid; border-bottom-color:#000080; border-bottom-width:1px; border-right-color:#000080; border-right-width:1px; }
\r
54 td.whs34 { border-right-style:Solid; border-bottom-style:Solid; border-right-color:#000080; border-right-width:1px; border-left-color:#000080; border-left-width:1px; border-left-style:Solid; border-bottom-color:#000080; border-bottom-width:1px; }
\r
55 td.whs35 { border-right-style:Solid; border-bottom-style:Solid; border-right-color:#000080; border-right-width:1px; border-bottom-color:#000080; border-bottom-width:1px; }
\r
56 img_whs36 { border:none; width:36px; height:38px; float:none; border-style:none; }
\r
58 </style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
\r
61 if (innerWidth != origWidth || innerHeight != origHeight)
\r
64 if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
\r
65 origWidth = innerWidth;
\r
66 origHeight = innerHeight;
\r
72 <style type="text/css">
\r
74 div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
\r
76 </style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
\r
77 <script type="text/javascript" language="javascript" src="../whver.js"></script>
\r
78 <script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
\r
79 <script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
\r
80 <script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
\r
82 <body><script type="text/javascript" language="javascript1.2">
\r
84 if (window.gbWhTopic)
\r
86 if (window.addTocInfo)
\r
88 addTocInfo("About SALOME\nInstalling SALOME");
\r
89 addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");
\r
92 if (window.writeBtnStyle)
\r
95 if (window.writeIntopicBar)
\r
98 if (window.setRelStartPage)
\r
100 setRelStartPage("../kernel.htm");
\r
109 document.location.reload();
\r
112 <h1 class="whs1">Installing SALOME</h1>
\r
121 class=kadov-p><a href="#install_from_wizard">Installing products
\r
122 with the Installation Wizard</a></li>
\r
125 class=kadov-p><a href="#check_version_proc">Notes on check products
\r
126 version procedure</a></li>
\r
129 class=kadov-p><a href="#pick_up_env">Pick up the environment</a></li>
\r
132 class=kadov-p><a href="#xml_files">Modifying XML configuration
\r
135 <li class=kadov-p><p class="whs3"><a href="#new_products">Implementing
\r
136 installation scripts for the new products</a></p></li>
\r
143 <h3><a name=install_from_wizard></a>Installing products with the <font
\r
144 style="color: #ff0000;"
\r
145 color=#FF0000>Installation Wizard</font></h3>
\r
147 <p>The Installation Wizard can be launched in two modes: gui and batch.
\r
149 The root directory of the Installation Wizard contains python script <span
\r
150 style="font-weight: bold;"><B>runInstall</B></span>. To run the Installation
\r
151 Wizard just type <b>runInstall</b> in terminal window:</p>
\r
153 <p><b style="font-weight: bold;">[ python ] runInstall [ -g | -b ] [ -f
\r
154 <xml-file> ] [ -t <target-dir> ] [ -tmp <tmp-dir> ]</b>
\r
159 <table x-use-null-cells cellspacing="0" width="100%" class="whs4">
\r
160 <script language='JavaScript'><!--
\r
161 if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4)) document.write("</table><table x-use-null-cells cellspacing='0' width='100%' border='1' bordercolor='silver' bordercolorlight='silver' bordercolordark='silver'>");
\r
166 <tr valign="top" class="whs7">
\r
167 <td width="18.383%" class="whs8">
\r
168 <p class="whs9"><b style="font-weight: bold;">-g</b></td>
\r
169 <td width="81.617%" class="whs10">
\r
170 <p>Runs the Installation Wizard in the GUI mode (default option). In this
\r
171 case only<span style="font-weight: bold;"><B> <xml-file></B></span> key
\r
172 is taken into account. Other parameters are ignored. </td></tr>
\r
174 <tr valign="top" class="whs7">
\r
175 <td width="18.383%" class="whs11">
\r
176 <p><b style="font-weight: bold;">-b</b></td>
\r
177 <td width="81.617%" class="whs12">
\r
178 <p>Runs the Installation Wizard in command-line mode. </td></tr>
\r
180 <tr valign="top" class="whs7">
\r
181 <td width="18.383%" class="whs11">
\r
182 <p><b style="font-weight: bold;">-f <xml-file></b></td>
\r
183 <td width="81.617%" class="whs12">
\r
184 <p>The configuration file to be used by the Installation Wizard.
\r
185 If this parameter is missed then the script tries to define the <i>Linux
\r
186 </i>version and uses corresponding xml file. For examle, for the <i>Linux
\r
187 Mandrake 10.1</i> <b>config_Mandrake10_1.xml</b> file is supposed
\r
188 to be used by default. If the appropriate file is not found, <b>config.xml</b>
\r
189 is used by default. This file refers to the basic target platform
\r
190 which is Mandrake 10.1 for SALOME 3.0 and higher. If config.xml file is
\r
191 also not found the warning message box is shown and Installation Wizard
\r
194 <tr valign="top" class="whs7">
\r
195 <td width="18.383%" class="whs11">
\r
196 <p> <b>-t <target-dir></b></td>
\r
197 <td width="81.617%" class="whs12">
\r
198 <p>The target directory, SALOME platform to be installed to. If used, overloads
\r
199 default target directory, given in the configuration xml file (usually
\r
200 <span style="font-weight: bold;"><B>/salome</B></span>, see <a href="#xml_files">here</a>).</td></tr>
\r
202 <tr valign="top" class="whs7">
\r
203 <td colspan="1" rowspan="1" width="18.383%" class="whs11">
\r
204 <p><b style="font-weight: bold;">-tmp <tmp-dir></b></td>
\r
205 <td colspan="1" rowspan="1" width="81.617%" class="whs13">
\r
206 <p>The directory, which is used to contain temporary files. If used,
\r
207 overloads default temporary directory, given in the configuration xml
\r
208 file (usually <span style="font-weight: bold;"><B>/tmp</B></span>, see <a href="#xml_files">here</a>).</td></tr>
\r
210 <tr valign="top" class="whs7">
\r
211 <td colspan="1" rowspan="1" width="18.383%" class="whs14">
\r
212 <p><b style="font-weight: bold;">-h</b></td>
\r
213 <td colspan="1" rowspan="1" width="81.617%" class="whs12">
\r
214 <p>Prints this help information. </td></tr>
\r
215 <script language='JavaScript'><!--
\r
216 if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4)) document.write("</table></table><table>");
\r
221 <b><br>
\r
224 <p>So, to run the Installation Wizard in the GUI mode, just type <b>runInstall</b>.
\r
229 <p>The installation procedure can support some different Linux platforms
\r
230 and various number of products. As it was mentioned above the basic target
\r
231 platform for SALOME 3.0.0 and higher is <i>Linux Mandrake 10.1</i>.<br> </p>
\r
233 <p>The using of configuration xml files gives flexible way to modify the
\r
234 list of products to be installed by the Installation Wizard without changing
\r
235 program's source code. Just create your own configuration file and implement
\r
236 installation scripts for products you want to be provided by Wizard. See
\r
237 <a href="#xml_files">modifying XML configuration file</a> and <a href="#new_products">implementing
\r
238 installation scripts for the new products</a> for more information. </p>
\r
242 <p>The <font style="color: #ff0000;"
\r
243 color=#FF0000>Installation Wizard</font> was built with using
\r
244 of the <span style="font-style: italic;"><I>Trolltech's</I></span> <b><i>Qt
\r
245 3.0.5 </i></b>library. The program contains several pages. To navigate
\r
246 between pages use <i>"Next"</i> and <i>"Back"</i>
\r
247 buttons in the lower part of the wizard window. <i>"Cancel"</i>
\r
248 button closes dialog window and quits the installation procedure. To invoke
\r
249 this help information click <i>"Help"</i> button. </p>
\r
253 <p>Skip the first <i>"Introduction"</i> page by pressing <i>"Next"</i>
\r
258 <p align="center" class="whs15"><img src="../intropage.png" width="586px" height="390px" border="0" class="img_whs16"></p>
\r
262 <p align="center" class="whs15"><b style="font-weight: bold;">Figure 1:</b> "Introduction"
\r
267 <p>In the second page you are proposed to enter the target directory where
\r
268 all selected products should be installed to. You can also press the <i>"Browse..."</i>
\r
269 button and choose the folder for installation using standard <b><i>Qt</i></b>'s
\r
270 browse directory dialog box. <br>
\r
271 If the directory you want to install products to does not exist you will
\r
272 be prompted to confirm the directory creation. If you type a wrong directory
\r
273 path, or if you have no permission for the directory you use, the corresponding
\r
274 message box will appear. </p>
\r
276 <p>The Installation Wizard has two modes of the installation: basic (default)
\r
277 and advanced. In the basic mode it is necessary just to enter the target
\r
278 directory. If you want to use the advanced mode, click the <i>"More..."</i>
\r
283 <p>In the advanced mode you have the possibility to select products to
\r
284 be installed (see <a href="#ProductPage">Fig.2</a> ). Each product can
\r
285 have several options of installation: you have a possibility to use native
\r
286 products, install already precompiled binaries, build product from the
\r
287 sources or not install it at all. Possible options and default choice
\r
288 are provided by the configuration file. You can mark the products you
\r
289 want to install by clicking the corresponding radio buttons in the list
\r
290 view in the left part of the page. Note that some products can be installed
\r
291 only together with other products (or these prerequisite products should
\r
292 be already installed on your computer). The installation procedure has
\r
293 a special feature to automatically mark these products in the list view.
\r
294 For example, in order to install <b><i>PyQt</i></b> it is necessary to
\r
295 have <b><i>gcc, Python</i></b>,<b><i> Qt</i></b> and <b><i>Sip</i></b>
\r
296 installed. Therefore all these products will be marked when you check
\r
297 <b><i>PyQt</i></b>. This feature can be switched off by clicking the <i>"Auto
\r
298 set prerequisites products"</i> checkbox. <br> </p>
\r
300 <p>Special button in the right part of the page - <i>"Unselect All"
\r
301 </i>- allows to quickly reset all products to the <i>"not install"</i>
\r
303 If you want to use native products (like <span style="font-weight: bold;"><B>gcc</B></span>,
\r
304 <span style="font-weight: bold;"><B>tcl</B></span>, etc.), select the <i>"use
\r
305 native" </i>option. </p>
\r
309 <p>There are also two checkboxes on this page: <i>"SALOME sources"</i>
\r
310 and <i>"SALOME binaries"</i>. These three-state checkboxes allow
\r
311 quick selecting/unselecting SALOME packages for the installation.</p>
\r
315 <p>The box in the right part of the page displays the information about
\r
316 currently highlighted product: name, version, short description (if provided
\r
317 in XML file), required disk space, disk space required for temporary files,
\r
318 list of prerequisites and current user choice. </p>
\r
320 <a name=ProductPage></a>
\r
322 <p align="center" class="whs17"><img src="../productpage.png" width="586px" height="589px" border="0" class="img_whs18"></p>
\r
324 <p align="center" class="whs15"> </p>
\r
326 <p align="center" class="whs15"><b style="font-weight: bold;">Figure 2:</b> "Installation
\r
327 settings" page in the advanced mode</p>
\r
329 <p align="center" class="whs15"> </p>
\r
331 <p>The <i>"Total disk space required:"</i> field displays how
\r
332 much disk space on the hard drive is required for installation of selected
\r
339 <p class="whs19"><b
\r
340 style="font-weight: bold;"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs20"> </b>Please, take into account
\r
341 that the displayed amount of required disk space is approximate and may
\r
342 differ when you install products on your hard drive. </p>
\r
346 <p>The installation procedure uses a special directory to store temporary
\r
347 files. The <i>"Space for temporary files:"</i> field shows the
\r
348 information about required disk space on the hard drive for extracting
\r
349 and compiling of the selected products. You can change the default directory
\r
350 - just type path to the folder you want to use or click on the corresponding
\r
351 <i>"Browse..."</i> button. </p>
\r
355 <p class="whs19"><b
\r
356 style="font-weight: bold;"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs20"></b> In fact, temporary files
\r
357 are not stored in the directory entered by user. The Installation Wizard
\r
358 creates in this directory an additional folder named something like INSTALLWORK<span
\r
359 style="font-weight: bold;"><B>XXXXX</B></span> where XXXXX is a unique number.
\r
360 This allows to launch several Installation Wizards simultaneously. This
\r
361 temporary directory is removed automatically when the installation finishes.</p>
\r
365 <p>The installation procedure also checks the available disk space in the
\r
366 selected directories according to the products selected. If there is not
\r
367 enough disk space on your hard drive you will see the corresponding error
\r
372 <p class="whs19"><b
\r
373 style="font-weight: bold;"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs20"> </b>Unfortunately, the configure
\r
374 procedure has a very annoying bug under Linux platform. The directory
\r
375 should be obligatory entered without spaces. For example, the configure
\r
376 procedure for <b><i>gcc</i></b> won't work if you pass the following parameter:
\r
377 <i>--prefix="/New Folder 1"</i>. <b>Therefore you are strongly
\r
378 recommended not to use directory names containing spaces.</b></p>
\r
382 <p>To proceed further click the <i>"Next"</i> button. At this
\r
383 moment the program will make some tests to check installation settings:
\r
384 whether there is enough disk space on the hard drive, whether native products
\r
385 are preinstalled, and the dependencies (prerequisites) for each product
\r
386 you have selected to be installed. If any test fails you will see the
\r
387 corresponding warning message box. Otherwise the wizard will follow to
\r
392 <p align="center" class="whs15"><a name=ChoicePage></a><br>
\r
393 <img src="../choicepage.png" width="586px" height="589px" border="0" class="img_whs18"></p>
\r
395 <p align="center" class="whs15"> </p>
\r
397 <p align="center" class="whs15"><b style="font-weight: bold;">Figure 3:</b> "Check
\r
398 your choice" page</p>
\r
400 <p align="center" class="whs15"> </p>
\r
402 <p>This page summarizes the installation settings you've made on the previous
\r
403 pages. You can check again your choice to change it if necessary. </p>
\r
407 <p>When you are sure that everything is OK, press the <i>"Next"</i>
\r
408 button to follow to the <a href="#ProgressPage">next page</a>. </p>
\r
412 <a name=ProgressPage></a>
\r
414 <p align="center" class="whs15"> <img src="../progresspage.png" width="586px" height="589px" border="0" class="img_whs18"></p>
\r
416 <p align="center" class="whs15"> </p>
\r
418 <p align="center" class="whs15"><b style="font-weight: bold;">Figure 4:</b> "Installation
\r
419 progress" page</p>
\r
421 <p align="center" class="whs15"> </p>
\r
423 <p>To start installation of the selected products click <i>"Start"</i>
\r
424 button. It launches the shell installation script and you will be able
\r
425 to see the output of the script in the dialog's topmost frame.
\r
426 In case of any installation problems (for example, you have accidentally
\r
427 removed the temporary directory) the script will ask you: <i>"Would
\r
428 you like to continue : (Y,N) ?"</i>. You can answer this question
\r
429 by typing [Y] or [N] in the middle text edit control frame. </p>
\r
433 <p class="whs19"><b
\r
434 style="font-weight: bold;"><img src="../tip1.gif" x-maintain-ratio="TRUE" width="35px" height="37px" border="0" class="img_whs21"></b> press [Enter] when you finish
\r
439 <p>The <i>"Installation Status"</i> frame window shows you the
\r
440 progress of installation. It contains a list of all selected products
\r
441 with brief descriptions. "<font style="color: #ff0000;"
\r
442 color=#FF0000>Waiting</font>"
\r
443 description means that installation of this product have not started yet.
\r
444 Currently the product being installed is marked as "<font style="color: #ff9900;"
\r
445 color=#FF9900>Processing</font>". All installed products have
\r
446 "<font style="color: #33ff33;"
\r
447 color=#33FF33>Completed</font>" description. </p>
\r
449 <p>You can abort installation and close the installation procedure using
\r
450 the <i>"Cancel"</i> button. It sends the signal "SIGTERM"
\r
451 to the shell script. The script has a signal handler and will try to clear
\r
452 all temporary files. The process of removing temporary files can take
\r
453 some time, so the installation wizard will wait 3 seconds before closing.
\r
456 <p>At the end of installation (when all selected products have been installed
\r
457 successfully) you can go back to the previous pages to start a new installation
\r
458 or click the <i>"Next"</i> button to go the Readme page: </p>
\r
460 <p align="center" class="whs15"><a name=readmepage></a><br>
\r
461 <img src="../readmepage.png" width="586px" height="589px" border="0" class="img_whs18"></p>
\r
463 <p align="center" class="whs15"> </p>
\r
465 <p align="center" class="whs15"><b style="font-weight: bold;">Figure 5:</b> "Finish
\r
466 installation" page</p>
\r
468 <p align="center" class="whs15"> </p>
\r
470 <p>In this page you can read some important information about the Instalation
\r
471 Wizard itself and some hints: how to run and test SALOME or how to build
\r
472 SALOME from the sources. This is the content of the README file which
\r
473 you can find in the root directory of the Installation Wizard. <br>
\r
474 You can also launch SALOME Desktop from this page by clicking the <i>"Launch
\r
475 SALOME" </i>button. </p>
\r
479 <p><a name=env_files></a>During the process of installation the script
\r
480 creates some environment files to simplify the procedure of launching
\r
481 SALOME. These shell scripts set all necessary environment variables for
\r
482 all products you have installed. To learn how installation scripts collect
\r
483 the environment, see <a href="#pick_up_env"> here</a>. </p>
\r
487 <p>These files are: <b>salome.csh</b> + <b>salome.sh</b> in the <span style="font-weight: bold;"><B>KERNEL
\r
488 module</B></span><b><i> sources</i></b> and <span style="font-weight: bold;"><B>KERNEL
\r
489 module</B></span><b><i> binaries</i></b> root directories and <b>env_products.csh</b>
\r
490 + <b>env_products.sh </b>in the target directory.</p>
\r
494 <p class="whs19"><b
\r
495 style="font-weight: bold;"><img src="../tip1.gif" x-maintain-ratio="TRUE" width="35px" height="37px" border="0" class="img_whs21"></b> <b>salome.(c)sh</b> and <b>env_products.(c)sh
\r
496 files</b> are slightly different: env_products.* files are optimized to
\r
497 be used for the building of SALOME modules from the sources (see <span
\r
498 style="font-weight: bold;"><B>README </B></span>file provided with the installation
\r
499 procedure on the CD). The salome.* files are optimized for the SALOME
\r
500 launching. This difference is defined by the environment variable<span
\r
501 style="font-weight: bold;"> <B></B></span><b>ENV_FOR_LAUNCH</b> which is set
\r
502 to 0 in env_products.* files and to 1 in salome.* files. </p>
\r
508 <h3><a name=check_version_proc></a>Notes on<font style="color: #ff0000;"
\r
509 color=#FF0000> check products
\r
510 version</font> procedure</h3>
\r
512 <p>Unfortunately under Linux platform there is no exact algorithm to identify
\r
513 the product's version. The table below gives an idea how the version is
\r
514 checked for the preinstalled products for the Linux Mandrake 10.1 platform.
\r
520 <table nosave x-use-null-cells cellspacing="0" background="../texture_horiz_ltbluebubbles.jpg" width="100%" class="whs22">
\r
522 <tr nosave valign="middle" class="whs23">
\r
523 <th nosave class="whs24">
\r
524 <p align="center" class="whs25">Product </th>
\r
525 <th nosave class="whs26">
\r
526 <p align="center" class="whs25">Algorithm of checking </th>
\r
527 <th nosave class="whs26">
\r
528 <p align="center" class="whs25">Preliminary steps before launching <br>
\r
529 the installation procedure </th>
\r
530 <th nosave class="whs27">
\r
531 <p align="center" class="whs25">Notes </th></tr>
\r
533 <tr valign="middle" class="whs23">
\r
534 <td class="whs28">gcc 3.4.1</td>
\r
535 <td class="whs29"><span style="font-weight: bold;"><B>ver</B></span>=`gcc
\r
538 <p align="center" class="whs15">- </td>
\r
539 <td class="whs29"><span style="font-weight: bold;"><B>ver</B></span>
\r
540 should be 3.4.1.<br>
\r
541 It is recommended to use native gcc on Mandrake 10.1.</td></tr>
\r
543 <tr nosave valign="middle" class="whs23">
\r
544 <td class="whs28">tcl 8.4.5</td>
\r
545 <td nosave class="whs29"><span style="font-weight: bold;"><B>1)</B></span>
\r
546 check if <span style="font-weight: bold;"><B>TCLHOME</B></span> variable is set<span
\r
547 style="font-weight: bold;"><B><br>
\r
548 2)</B></span> existence of tclsh8.4<span style="font-weight: bold;"><B><br>
\r
549 3)</B></span> existence of wish8.4 <span style="font-weight: bold;"><B><br>
\r
550 4)</B></span> existence of libtcl8.4.so <span style="font-weight: bold;"><B><br>
\r
551 5)</B></span> existence of libtk8.4.so</td>
\r
552 <td class="whs29">set <span style="font-weight: bold;"><B>TCLHOME</B></span>
\r
553 if you have a preinstalled version of tcl. <br>
\r
554 add a directory where libraries can be found to the <span style="font-weight: bold;"><B>LD_LIBRARY_PATH</B></span></td>
\r
555 <td class="whs29">Unfortunately there is no strict
\r
556 way to check the tcl version number.<br>
\r
557 It is recommended to use native tcl/tk on Mandrake 10.1.</td></tr>
\r
559 <tr valign="middle" class="whs23">
\r
560 <td valign="top" class="whs30">boost 1.31.0</td>
\r
561 <td valign="top" class="whs31"><span style="font-weight: bold;"><B>1)</B></span> check if <span
\r
562 style="font-weight: bold;"><B>BOOSTDIR</B></span> variable is set.<span style="font-weight: bold;"><B><br>
\r
563 2)</B></span> <span style="font-weight: bold;"><B>ver</B></span>=`egrep 'BOOST_VERSION
\r
564 [0-9]+' ${BOOSTDIR}/boost/version.hpp | sed 's/.*BOOST_VERSION \([0-9]\+\)/\1/g'`</td>
\r
565 <td valign="top" class="whs31">set <span style="font-weight: bold;"><B>BOOSTDIR</B></span> if
\r
566 you have a preinstalled version of boost</td>
\r
567 <td valign="top" class="whs31">we use file version.hpp in the boost distribution to get
\r
568 the version information.<span style="font-weight: bold;"><B><br>
\r
569 ver</B></span> should be equal to 103100.</td></tr>
\r
571 <tr valign="middle" class="whs23">
\r
572 <td class="whs28">Open CASCADE 5.2.3</td>
\r
573 <td class="whs29"><span style="font-weight: bold;"><B>1)</B></span>
\r
574 check if <span style="font-weight: bold;"><B>CASROOT</B></span> variable is set<span
\r
575 style="font-weight: bold;"><B><br>
\r
576 2)</B></span> ver_major=`grep "!define OCC_VERSION_MAJOR" ${CASROOT}/inc/Standard_Version.hxx
\r
577 | awk '{print $3}'`<span style="font-weight: bold;"><B><br>
\r
578 3)</B></span> ver_minor=`grep "!define OCC_VERSION_MINOR" ${CASROOT}/inc/Standard_Version.hxx
\r
579 | awk '{print $3}'`<span style="font-weight: bold;"><B><br>
\r
580 4)</B></span> <span style="font-weight: bold;"><B>ver</B></span>="$ver_major.$ver_minor"<span
\r
581 style="font-weight: bold;"><B><br>
\r
582 5)</B></span> Check the existence of libStdPlugin.so in OpenCASCADE distribution,</td>
\r
583 <td class="whs29">set <span style="font-weight: bold;"><B>CASROOT</B></span>
\r
584 if you have a preinstalled version of Open CASCADE</td>
\r
585 <td class="whs29">CASCADE's Standard_Version.hxx file
\r
586 provides the version information.<span style="font-weight: bold;"><B><br>
\r
587 ver</B></span> should be equal to 5.2.<br>
\r
589 Unfortunately it is impossible to define the release version number. Instead
\r
590 we check if libStdPlugin.so library exists: it is introduced in OpenCASCADE
\r
591 since version 5.2.2.</td></tr>
\r
593 <tr valign="middle" class="whs23">
\r
594 <td class="whs28">Python 2.3.4</td>
\r
595 <td class="whs29"><span style="font-weight: bold;"><B>1)</B></span>
\r
596 <span style="font-weight: bold;"><B>PYTHONHOME</B></span> variable should be
\r
597 set<span style="font-weight: bold;"><B><br>
\r
598 2)</B></span> isPython=`which python` <span style="font-weight: bold;"><B><br>
\r
599 3)</B></span> <span style="font-weight: bold;"><B>ver</B></span>=`python -V`</td>
\r
600 <td class="whs29">set <span style="font-weight: bold;"><B>PYTHONHOME</B></span>
\r
601 to root Python distribution folder;<br>
\r
602 add the directory where python can be found to the <span style="font-weight: bold;"><B>PATH</B></span>
\r
604 <td class="whs29">Python should exist and <span style="font-weight: bold;"><B>ver</B></span>
\r
605 should be equal to 2.3.4 <br>
\r
606 It is recommended to use native Python on Mandrake 10.1.</td></tr>
\r
608 <tr valign="middle" class="whs23">
\r
609 <td class="whs28">Swig 1.3.24</td>
\r
610 <td class="whs29"><span style="font-weight: bold;"><B>ver</B></span>=`swig
\r
611 -version 2>&1 | grep -i version | awk '{ print $3 }' | sed -e 's/^\([0-9.]*\)\(.*\)/\1/'`</td>
\r
612 <td class="whs29">add the directory where swig binary
\r
613 can be found to the <span style="font-weight: bold;"><B>PATH</B></span> variable</td>
\r
614 <td class="whs29">Swig should exist and <span style="font-weight: bold;"><B>ver</B></span>
\r
615 should be equal to 1.3.24.</td></tr>
\r
617 <tr valign="middle" class="whs23">
\r
618 <td class="whs28">Qt 3.3.3</td>
\r
619 <td class="whs29"><span style="font-weight: bold;"><B>1)
\r
620 QTDIR</B></span> variable should be set.<span style="font-weight: bold;"><B><br>
\r
621 2) ver</B></span>=`grep "QT_VERSION_STR" ${QTDIR}/include/qglobal.h
\r
622 | sed -e 's%^#define QT_VERSION_STR\([[:space:]]*\)%%g' -e 's%\"%%g'`</td>
\r
623 <td class="whs29">set <span style="font-weight: bold;"><B>QTDIR</B></span>
\r
624 if you have a preinstalled version of qt</td>
\r
625 <td class="whs29">Qt's qglobal.h file provides version
\r
626 information: <span style="font-weight: bold;"><B>ver</B></span> should be equal
\r
628 It is recommended to use native Qt on Mandrake 10.1.</td></tr>
\r
630 <tr valign="middle" class="whs23">
\r
631 <td class="whs32">msg2qm (Qt 3.3.3 compatible)</td>
\r
632 <td class="whs33"><span style="font-weight: bold;"><B>MSG2QM_ROOT</B></span>
\r
633 variable should be set.</td>
\r
634 <td class="whs33">set <span style="font-weight: bold;"><B>MSG2QM_ROOT</B></span>
\r
635 if you have preinstalled version of msg2qm tool</td>
\r
636 <td class="whs33">msg2qm is a Qt tool used to convert
\r
637 text *.po files to *.qm resource files. Unfortunately this tool is not
\r
638 included in the Qt distribution and is provided only in its sources package.
\r
639 We distribute this tool with the Installation Wizard.<br>
\r
640 In addition there is no way to check the version number of msg2qm tool.</td></tr>
\r
642 <tr valign="middle" class="whs23">
\r
643 <td class="whs28">Qwt 4.2.0/0.4.2</td>
\r
644 <td class="whs29"><span style="font-weight: bold;"><B>1)</B></span>
\r
645 <span style="font-weight: bold;"><B>QWTHOME</B></span> variable should be set.<span
\r
646 style="font-weight: bold;"><B><br>
\r
647 2)</B></span> check if libqwt.so.4.2.0 exists</td>
\r
648 <td class="whs29">set <span style="font-weight: bold;"><B>QWTHOME</B></span>
\r
649 if you have a preinstalled version of qwt</td>
\r
650 <td class="whs29">Unfortunately there is no strict
\r
651 way to check the qwt version number.<br>
\r
652 We try to find libqwt.so.4.2.0 in the ${<span style="font-weight: bold;"><B>QWTHOME</B></span>}/lib
\r
653 folder. </td></tr>
\r
655 <tr valign="middle" class="whs23">
\r
656 <td class="whs28">Hdf 5-1.6.3</td>
\r
657 <td class="whs29"><span style="font-weight: bold;"><B>1)
\r
658 HDF5HOME</B></span> variable should be set.<span style="font-weight: bold;"><B><br>
\r
659 2)</B></span> existence of libhdf5.so.0.0.0 <span style="font-weight: bold;"><B><br>
\r
660 3)</B></span> existence of libhdf5.settings<span style="font-weight: bold;"><B><br>
\r
661 4)</B></span> <span style="font-weight: bold;"><B>ver</B></span>=`grep "HDF5
\r
662 Version:" ${HDF5HOME}/lib/libhdf5.settings | awk '{print $3}'`</td>
\r
663 <td class="whs29">set <span style="font-weight: bold;"><B>HDF5HOME</B></span>
\r
664 if you have a preinstalled version of hdf</td>
\r
665 <td class="whs29">We try to find libhdf5.so.0.0.0 and
\r
666 libhdf5.settings in ${<span style="font-weight: bold;"><B>HDF5HOME</B></span>}/lib
\r
668 File libhdf5.settings contains the following version information: <br>
\r
669 HDF5 Version: 1.6.3</td></tr>
\r
671 <tr valign="middle" class="whs23">
\r
672 <td class="whs28">Med 2.2.2</td>
\r
673 <td class="whs29"><span style="font-weight: bold;"><B>1)
\r
674 MED2HOME</B></span> variable should be set.<span style="font-weight: bold;"><B><br>
\r
675 2)</B></span> existence of libmed.so.1.0.1</td>
\r
676 <td class="whs29">set <span style="font-weight: bold;"><B>MED2HOME</B></span>
\r
677 if you have a preinstalled version of med</td>
\r
678 <td class="whs29">Unfortunately there is no strict
\r
679 way to check the med version number.<br>
\r
680 We try to find libmed.so.1.0.1 in ${<span style="font-weight: bold;"><B>MED2HOME</B></span>}/lib
\r
682 If you have a problem with the preinstalled version of med, please, reinstall
\r
685 <tr valign="middle" class="whs23">
\r
686 <td class="whs28">Vtk 4.2.6</td>
\r
687 <td class="whs29"><span style="font-weight: bold;"><B>1)
\r
688 VTKHOME</B></span> variable should be set.<span style="font-weight: bold;"><B><br>
\r
689 2)</B></span> existence of libvtkCommon.so</td>
\r
690 <td class="whs29">set <span style="font-weight: bold;"><B>VTKHOME</B></span>
\r
691 if you have a preinstalled version of vtk</td>
\r
692 <td class="whs29">Unfortunately there is no strict
\r
693 way to check the VTK version number.<br>
\r
694 We try to find libvtkCommon.so in ${<span style="font-weight: bold;"><B>VTKHOME</B></span>}/lib/vtk
\r
696 If you have a problem with the preinstalled version of vtk, please, reinstall
\r
699 <tr valign="middle" class="whs23">
\r
700 <td valign="top" class="whs30">Netgen 4.3</td>
\r
701 <td valign="top" class="whs31"><span style="font-weight: bold;"><B>NETGENROOT</B></span> variable
\r
702 should be set. </td>
\r
703 <td valign="top" class="whs31">set <span style="font-weight: bold;"><B>NETGENROOT</B></span> if
\r
704 you have a preinstalled version of Netgen.</td>
\r
705 <td valign="top" class="whs31">Unfortunately we can't find anything about netgen version.<br>
\r
706 We just check if the <span style="font-weight: bold;"><B>NETGENROOT</B></span>
\r
707 environment varible is set.</td></tr>
\r
709 <tr valign="middle" class="whs23">
\r
710 <td class="whs28">OmniORB 4.0.5, <br>
\r
711 OmniORBpy 2.5, <br>
\r
712 OmniNotify 2.1</td>
\r
713 <td class="whs29"><span style="font-weight: bold;"><B>1)
\r
714 OMNIORBDIR</B></span> variable should be set.<span style="font-weight: bold;"><B><br>
\r
715 2)</B></span> existence of libomniORB4.so.0.5 <span style="font-weight: bold;"><B><br>
\r
716 3)</B></span> existence of _omnipymodule.so.2.4 <span style="font-weight: bold;"><B><br>
\r
717 4)</B></span> existence of libCOSNotify4.so.0.1 <span style="font-weight: bold;"><B><br>
\r
718 5)</B></span> existence of notifd</td>
\r
719 <td class="whs29">set <span style="font-weight: bold;"><B>OMNIORBDIR</B></span>
\r
720 if you have a preinstalled version of omni</td>
\r
721 <td class="whs29">We try to find several omni libraries
\r
722 and binaries in the ${<span style="font-weight: bold;"><B>OMNIORBDIR</B></span>}/lib
\r
723 and ${<span style="font-weight: bold;"><B>OMNIORBDIR</B></span>}/bin directories.</td></tr>
\r
725 <tr valign="middle" class="whs23">
\r
726 <td class="whs28">Numeric 23.7</td>
\r
727 <td class="whs29"><span style="font-weight: bold;"><B>ver</B></span>=`python
\r
728 -c 'import Numeric; print Numeric.__version__' 2>/dev/null`</td>
\r
729 <td class="whs29">add the directory where you
\r
730 have the preinstalled version of Numeric package to your <span style="font-weight: bold;"><B>PYTHONHOME
\r
731 </B></span>variable</td>
\r
732 <td class="whs29">If you have problem with the preinstalled
\r
733 version of Numeric 23.7, please, reinstall it.</td></tr>
\r
735 <tr valign="middle" class="whs23">
\r
736 <td class="whs28">Sip 4.1</td>
\r
737 <td class="whs29"><span style="font-weight: bold;"><B>1)
\r
738 SIPDIR</B></span> variable should be set.<span style="font-weight: bold;"><B><br>
\r
739 2) ver</B></span>=`${SIPDIR}/sip -V | awk '{print $1}'`</td>
\r
740 <td class="whs29">set <span style="font-weight: bold;"><B>SIPDIR</B></span>
\r
741 to the directory where you have sip preinstalled</td>
\r
742 <td class="whs29"><span style="font-weight: bold;"><B>ver</B></span>
\r
743 should be equal to 4.1. </td></tr>
\r
745 <tr valign="middle" class="whs23">
\r
746 <td class="whs28">PyQt 3.13</td>
\r
747 <td class="whs29"><span style="font-weight: bold;"><B>1)
\r
748 PYQTDIR</B></span> variable should be set.<span style="font-weight: bold;"><B><br>
\r
749 2)</B></span> existence of qt.so library</td>
\r
750 <td class="whs29">set <span style="font-weight: bold;"><B>PYQTDIR</B></span>
\r
751 to the directory where you have PyQt preinstalled</td>
\r
752 <td class="whs29">Unfortunately we can't exactly check
\r
753 the PyQt version number. <br>
\r
754 We just try to find qt.so in ${<span style="font-weight: bold;"><B>PYQTDIR</B></span>}.
\r
757 <tr valign="middle" class="whs23">
\r
758 <td class="whs28">HappyDoc 2.1</td>
\r
759 <td class="whs29"><span style="font-weight: bold;"><B>1)</B></span>
\r
760 existence of happydoc <span style="font-weight: bold;"><B><br>
\r
761 2)</B></span> <span style="font-weight: bold;"><B>ver</B></span>=`happydoc | grep
\r
762 "HappyDoc version 2.1"`</td>
\r
763 <td class="whs29">add the directory where you have
\r
764 HappyDoc installed to your <span style="font-weight: bold;"><B>PATH</B></span>
\r
766 <td class="whs29">We try to find happydoc in ${<span
\r
767 style="font-weight: bold;"><B>PATH</B></span>}. <span style="font-weight: bold;"><B><br>
\r
768 ver</B></span> should not be empty. <span style="font-weight: bold;"><B><br>
\r
770 Note:</B></span> this product is not obligatory for SALOME compilation.</td></tr>
\r
772 <tr valign="middle" class="whs23">
\r
773 <td class="whs28">Doxygen 1.3.7</td>
\r
774 <td class="whs29"><span style="font-weight: bold;"><B>1)</B></span>
\r
775 existence of doxygen <span style="font-weight: bold;"><B><br>
\r
776 2)</B></span> existence of doxytag <span style="font-weight: bold;"><B><br>
\r
777 3)</B></span> existence of doxywizard<span style="font-weight: bold;"><B><br>
\r
778 4)</B></span> <span style="font-weight: bold;"><B>ver</B></span>=`doxygen --version`</td>
\r
779 <td class="whs29">add the directory where you have
\r
780 doxygen binaries preinstalled to the <span style="font-weight: bold;"><B>PATH</B></span>
\r
782 <td class="whs29">doxygen, doxytag, doxywizard binaries
\r
783 should exist; <span style="font-weight: bold;"><B>ver</B></span> should be equal
\r
786 If you have problem with the preinstalled version of doxygen, please, reinstall
\r
789 It is recommended to use native doxygen on Mandrake 10.1.</td></tr>
\r
791 <tr valign="middle" class="whs23">
\r
792 <td class="whs28">Graphviz 2.2.1</td>
\r
793 <td class="whs29"><span style="font-weight: bold;"><B>1)</B></span>
\r
794 existence of dot binary.<span style="font-weight: bold;"><B><br>
\r
795 2)</B></span> <span style="font-weight: bold;"><B>ver</B></span>=`dot -V 2>&1
\r
796 | awk '{print $3}'`</td>
\r
797 <td class="whs29">add the graphviz bin directory to
\r
798 the <span style="font-weight: bold;"><B>PATH</B></span> environment variable</td>
\r
799 <td class="whs29">We try to find dot program in the
\r
800 ${<span style="font-weight: bold;"><B>PATH</B></span>}.<span style="font-weight: bold;"><B><br>
\r
801 ver</B></span> should be equal to 2.2.1.</td></tr>
\r
803 <tr valign="middle" class="whs23">
\r
804 <td class="whs28"><span style="font-weight: bold;"><B>MODULE</B></span>
\r
806 (where <span style="font-weight: bold;"><B>MODULE</B></span> = KERNEL, GUI, GEOM,
\r
808 <td class="whs29"><span style="font-weight: bold;"><B>1)
\r
809 MODULE_ROOT_DIR</B></span> variable should be set<span style="font-weight: bold;"><B><br>
\r
810 2)</B></span> existence of VERSION file <span style="font-weight: bold;"><B><br>
\r
811 3) ver</B></span>=`cat ${<span style="font-weight: bold;"><B>MODULE_ROOT_DIR</B></span>}/bin/salome/VERSION
\r
812 | awk -F: '{print $NF}' | tr -d '[:space:]'`</td>
\r
813 <td class="whs29">set <span style="font-weight: bold;"><B>MODULE_ROOT_DIR</B></span>
\r
814 if you have preinstalled binaries of <span style="font-weight: bold;"><B>MODULE</B></span>
\r
815 version 3.0.0.</td>
\r
816 <td class="whs29"><span style="font-weight: bold;"><B>MODULE</B></span>
\r
817 binaries should exist and <span style="font-weight: bold;"><B>ver</B></span>
\r
818 should be equal to 3.0.0.</td></tr>
\r
820 <tr valign="middle" class="whs23">
\r
821 <td class="whs34"><span style="font-weight: bold;"><B>MODULE</B></span>
\r
823 (where <span style="font-weight: bold;"><B>MODULE</B></span> = KERNEL, GUI, GEOM,
\r
825 <td class="whs35"><span style="font-weight: bold;"><B>1)</B></span>
\r
826 existence of <span style="font-weight: bold;"><B>MODULE_SRC_DIR</B></span> <span
\r
827 style="font-weight: bold;"><B><br>
\r
828 2)</B></span> existence of VERSION file <span style="font-weight: bold;"><B><br>
\r
829 3) ver</B></span>=`cat ${<span style="font-weight: bold;"><B>MODULE_SRC_DIR</B></span>}/bin/VERSION
\r
830 | awk -F: '{print $NF}' | tr -d '[:space:]'`</td>
\r
831 <td class="whs35">set <span style="font-weight: bold;"><B>MODULE_SRC_DIR</B></span>
\r
832 if you have preinstalled sources of <span style="font-weight: bold;"><B>MODULE</B></span>
\r
833 version 3.0.0.</td>
\r
834 <td class="whs29"><span style="font-weight: bold;"><B>MODULE</B></span>
\r
835 sources should exist and ver should be equal to 3.0.0.</td></tr>
\r
842 <p class="whs19"><b
\r
843 style="font-weight: bold;"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs36"></b> For native products the installation
\r
844 procedure sets proper environment variables itself, and you do not need
\r
845 to set such variables like, e.g. <b>TCLHOME</b> or <b>PYTHONHOME</b>.
\r
847 If you have native products installed to directories different from default
\r
848 ones (not <b>/usr/bin</b>, <b>/usr/lib</b>...), it is recommended to follow
\r
849 the above description. Or you should properly set <span style="font-weight: bold;"><B>PATH</B></span>
\r
850 and <span style="font-weight: bold;"><B>LD_LIBRARY_PATH</B></span> variables
\r
851 <b><font style="color: #ff0000;"
\r
852 color=#FF0000>before</font></b> starting the Installation Wizard.
\r
853 Otherwise the installation script will fail to find the preinstalled products.</p>
\r
859 <p class="whs19"><span
\r
860 style="font-weight: bold;"><B><b style="font-weight: bold;"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs36"></b> </B></span>For some native products (e.g. gcc, Python) the
\r
861 rules of version checking are not so strict as described in the table.
\r
862 Only major and minor version numbers should coincide with the prerequisite.
\r
863 Release number can be larger. This is done to give a possibility to use
\r
864 native products for newer versions of Linux. If some native product has
\r
865 a version number larger than the one required by the installation procedure,
\r
866 the user will be prompted by the warning message like this: <i>"You
\r
867 have a newer version of gcc installed on your computer than that is required
\r
868 (3.4.1). Continue?"</i>. You can press the <i>"Yes"</i>
\r
869 button to proceed with the installation but in this case you should be
\r
870 aware of what you are doing. SALOME binaries (including other products)
\r
871 are compiled with the predefined prerequisites and most likely can not
\r
872 be run successfully if these products are not found. This can be only
\r
873 helpful if you intend to build all products from the sources.</p>
\r
881 <h3><a name=pick_up_env></a>Pick up the <font style="color: #ff0000;"
\r
882 color=#FF0000>environment</font></h3>
\r
884 <p>Please, read carefully the following information. This section describes
\r
885 how the installation procedure collects the environment. </p>
\r
887 <p>After installing each product the shell script creates a special environment
\r
888 file for each product in its target folder . The name of the file is generated
\r
889 from the name of the product according to the following scheme: <b>env_<product_name>.sh.</b>
\r
890 This file includes all necessary product settings. For example for Vtk
\r
891 the file is <b>env_Vtk.sh</b>. Environment files allow to pick up all
\r
892 environment settings which are necessary to build and launch SALOME. When
\r
893 installing SALOME sources and/or binaries, the installation procedure
\r
894 picks up all the settings files and generates two scripts: <b>salome.sh</b>
\r
895 and <b>salome.csh </b>for sh and csh correspondingly. Such approach helps
\r
896 to save time when reinstalling products and you may not care about setting
\r
897 all environment variables manually to build/launch SALOME. What you need
\r
898 is just to use one of these scripts. </p>
\r
900 <p>This also concerns those products which are not currently installed.
\r
901 For example, you install some SALOME binaries to the directory where you
\r
902 have previously installed other products. The installation procedure
\r
903 still tries to collect the environment files from the target directory
\r
904 if it finds necessary products there. If some product are not found in
\r
905 the target directory the corresponding section of <b>salome.sh/salome.csh</b>
\r
906 files will be skipped. <br>
\r
907 For native products (like <i><b>gcc, tcl, etc...)</b></i> the installation
\r
908 procedure tries to find them first using <b>PATH</b> / <b>LD_LIBRARY_PATH</b>
\r
909 variables and then in the system default directories (<b>/usr/bin, /usr/lib</b>
\r
910 etc., depending on the product). </p>
\r
912 <p>In any case you may edit <b>salome.*</b> files after the installation
\r
913 procedure finishes, as you want.<span style="font-weight: bold;"><B><br> </B></span></p>
\r
915 <p class="whs19"><b><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs36"></b> Note: as it was mentioned <a href="#env_files"
\r
916 style="font-weight: normal;">above</a>
\r
917 there are two more environment files which are generated by the installation
\r
918 procedure: env_products.csh and env_products.sh. These files can be found
\r
919 in the target installation root directory.</p>
\r
927 <h3><a name=xml_files></a>Modifying <font style="color: #ff0000;"
\r
928 color=#FF0000>XML</font> configuration
\r
929 <font style="color: #ff0000;"
\r
930 color=#FF0000>file</font></h3>
\r
932 <p>You can create your own configuration file. The Installation Wizard
\r
933 can then take it as a command line argument to provide a list of products
\r
934 you want to install with it. The list of products and some other settings
\r
935 for the Installation Wizard are provided in the XML file. The default
\r
936 file the Installation Wizard looks for if no command line arguments are
\r
937 given, is <b>config.xml</b>. This section describes the structure of the
\r
938 configuration file. <br>
\r
939 XML tags are in bold blue, optional sections/tags are in brackets. </p>
\r
941 <p><b><font style="color: #000099;"
\r
942 color=#000099><document></font></b> <font style="color: #000000;"
\r
943 color=#000000><b><br>
\r
944 </b>[</font><b><font style="color: #000099;"
\r
945 color=#000099> <config</font></b><font
\r
946 style="color: #000000;"
\r
947 color=#000000> [ version=<install_wizard_version> ]</font> <font
\r
948 style="color: #000000;"
\r
950 [
\r
951 caption=<install_wizard_caption> ]</font> <font style="color: #000000;"
\r
953 [
\r
954 copyright=<install_wizard_copyright> ]</font> <font style="color: #000000;"
\r
956 [
\r
957 license=<install_wizard_license_info> ]</font> <font style="color: #000000;"
\r
959 [
\r
960 os=<target_platform> ]</font><b><font style="color: #000099;"
\r
962 /></font></b><font style="color: #000000;"
\r
963 color=#000000> <br>
\r
964 ]</font> <font style="color: #000000;"
\r
965 color=#000000><b><br>
\r
966 </b>[ </font><b><font style="color: #000099;"
\r
967 color=#000099><path</font></b><font
\r
968 style="color: #000000;"
\r
969 color=#000000> [ targetdir=<target_directory> ]</font>
\r
970 <font style="color: #000000;"
\r
972 [
\r
973 tempdir=<temp_directory> ]</font><b><font
\r
974 style="color: #000099;"
\r
976 /> </font></b><font style="color: #000000;"
\r
978 ]</font> <font style="color: #000000;"
\r
980 [</font><b><font style="color: #000099;"
\r
981 color=#000099> <product</font></b><font
\r
982 style="color: #000000;"
\r
983 color=#000000> name=<product_name></font> <font style="color: #000000;"
\r
985
\r
986 version=<product_version></font> <br>
\r
987 [ context=<product_context>
\r
989 [ description=<product_description>
\r
990 ]<font style="color: #000000;"
\r
992
\r
993 install=<installation_mode></font> <font style="color: #000000;"
\r
995
\r
996 supported=<supported_installation_modes></font> <font style="color: #000000;"
\r
998
\r
999 disable=<disable_flag><br>
\r
1000 [ pickupenv=<pickup_env_flag>
\r
1001 ]</font><font style="color: #000000;"
\r
1002 color=#000000><br>
\r
1003
\r
1004 dependancies=<list_of_prerequisites></font> <font style="color: #000000;"
\r
1005 color=#000000><br>
\r
1006
\r
1007 installdiskspace=<install_disk_space></font> <font style="color: #000000;"
\r
1008 color=#000000><br>
\r
1009
\r
1010 temporarydiskspace=<tmp_disk_space></font> <font style="color: #000000;"
\r
1011 color=#000000><br>
\r
1012
\r
1013 script=<installation_script_name></font><font style="color: #000099;"
\r
1014 color=#000099><br>
\r
1015 /<b>></b></font><font style="color: #000000;"
\r
1018 ]</font> <font style="color: #000000;"
\r
1019 color=#000000><br>
\r
1020 [</font><b><font style="color: #000099;"
\r
1021 color=#000099> <product</font></b><font
\r
1022 style="color: #000000;"
\r
1023 color=#000000> ... </font><font style="color: #000099;"
\r
1024 color=#000099><br>
\r
1025 /<b>></b></font><font style="color: #000000;"
\r
1028 ]</font> <font style="color: #000000;"
\r
1029 color=#000000><br>
\r
1030 <b> .</b></font><b><font style="color: #000099;"
\r
1031 color=#000099>..</font></b>
\r
1032 <b><font style="color: #000099;"
\r
1033 color=#000099><br>
\r
1034 </document></font></b> </p>
\r
1036 <h4><font style="color: #000000;"
\r
1037 color=#000000><config> section</font></h4>
\r
1039 <font style="color: #000000;"
\r
1040 color=#000000>This is an optional section - it contains general
\r
1041 information the Installation Wizard itself.</font>
\r
1045 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1046 class=kadov-p><font style="color: #000000;"
\r
1047 color=#000000><b>version</b>: Installation
\r
1048 Wizard version number;</font></li>
\r
1050 <li class=kadov-p><b>caption</b>: Installation Wizard main window title
\r
1051 - if this string contains the '%1' text - the title will contain a version
\r
1052 number in this place (see above);</li>
\r
1054 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1055 class=kadov-p><font style="color: #000000;"
\r
1056 color=#000000><b>copyright</b>: Installation
\r
1057 Wizard copyright information (appears on the first page of the program);</font></li>
\r
1059 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1060 class=kadov-p><font style="color: #000000;"
\r
1061 color=#000000><b>license</b>: Installation
\r
1062 Wizard license information (appears on the first page of the program);</font></li>
\r
1064 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1065 class=kadov-p><font style="color: #000000;"
\r
1066 color=#000000><b>os</b>: Contains directory
\r
1067 name (relative from ./Products/BINARIES) where the Installation Wizard
\r
1068 should search precompiled binaries packages. If this tag is skipped, binaries
\r
1069 are implied to be in the ./Products/BINARIES directory.</font></li>
\r
1072 <h4><b><font style="color: #000000;"
\r
1073 color=#000000><path> section</font></b></h4>
\r
1075 This is an optional section - it contains default directories.
\r
1079 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1080 class=kadov-p><font style="color: #000000;"
\r
1081 color=#000000><b>targetdir</b>: Starting target
\r
1082 directory - path to the directory where products should be installed;</font></li>
\r
1084 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1085 class=kadov-p><font style="color: #000000;"
\r
1086 color=#000000><b>tempdir</b>: Starting temp
\r
1087 directory - path to the directory for the temporary files.</font></li>
\r
1090 <h4><b><product> section</b></h4>
\r
1092 This section describes the products that are to be installed with the Installation
\r
1093 Wizard. Products appear in the products tree and are installed in the
\r
1094 order they are described in the configuration file. It is recommended
\r
1095 to insert native products at the top of the list before all other products.
\r
1100 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1101 class=kadov-p><font style="color: #000000;"
\r
1102 color=#000000><b>name</b>: Name of the product;</font></li>
\r
1104 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1105 class=kadov-p><font style="color: #000000;"
\r
1106 color=#000000><b>version</b>: Version of the
\r
1107 product;</font></li>
\r
1109 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1110 class=kadov-p><font style="color: #000000;"
\r
1111 color=#000000><b>description</b>: Description
\r
1112 of the product (optional);</font></li>
\r
1114 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1115 class=kadov-p><font style="color: #000000;"
\r
1116 color=#000000><b>context</b>: Context of the
\r
1117 product (optional); the possible values are <b>'salome sources'</b>, <b>'salome
\r
1118 binaries'</b> and <b>'prerequisite'</b>;</font></li>
\r
1120 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1121 class=kadov-p><font style="color: #000000;"
\r
1122 color=#000000><b>supported</b>: Supported modes
\r
1123 of installation, should contain one or more of the following options,
\r
1124 separated by a comma: <i>install sources</i>, <i>install binaries</i>,
\r
1125 <i>use native</i>. The Installation script should contain corresponding
\r
1126 functions for each of supported installation modes;</font></li>
\r
1128 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1129 class=kadov-p><font style="color: #000000;"
\r
1130 color=#000000><b>install</b>: Default (starting)
\r
1131 installation mode;</font></li>
\r
1133 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1134 class=kadov-p><font style="color: #000000;"
\r
1135 color=#000000><b>disable</b>: If this flag
\r
1136 has 'true' value, the corresponding product will not appear in the list
\r
1137 of products tree and will not be installed;</font></li>
\r
1139 <li class=kadov-p><b>pickupenv</b>: This flag points that the pickup
\r
1140 environment procedure should be performed for this module. If this flag
\r
1141 is equal to <b>true</b>, salome.sh and salome.csh files will
\r
1142 be created in the product's installation directory. Usually this option
\r
1143 is set to true for SALOME KERNEL module sources and the binaries package.
\r
1144 This is an optional key, the default value is <b>false.</b></li>
\r
1146 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1147 class=kadov-p><font style="color: #000000;"
\r
1148 color=#000000><b>dependancies</b>: list of
\r
1149 prerequisite products, which are necessary to build this product, separated
\r
1150 by a comma;</font></li>
\r
1152 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1153 class=kadov-p><font style="color: #000000;"
\r
1154 color=#000000><b>installdiskspace</b>: Total
\r
1155 amount of space (integer, in Kbytes), which the product occupies on the
\r
1156 hard drive after the installation;</font></li>
\r
1158 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1159 class=kadov-p><font style="color: #000000;"
\r
1160 color=#000000><b>temporarydiskspace</b>: Disk
\r
1161 space (integer, in Kbytes) for the temporary files, which are necessary
\r
1162 to build the product from the sources;</font></li>
\r
1164 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1165 class=kadov-p><font style="color: #000000;"
\r
1166 color=#000000><b>script</b>: Installation script
\r
1167 name. This script is in charge of installation of the product. It is called
\r
1168 when necessary from the main program. See the <a href="#new_products">next
\r
1169 section</a> for more information.</font></li>
\r
1174 <p class="whs19"><span
\r
1175 style="font-weight: bold;"><B><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs20"></B></span> If you add new products
\r
1176 to be installed with the Installation Wizard, you should also provide
\r
1177 the installation script for this product. See the next section for more
\r
1184 <h3><a name=new_products></a>Implementing <font style="color: #ff0000;"
\r
1185 color=#FF0000>installation
\r
1186 scripts</font> for the new products</h3>
\r
1188 <p>When you want some product to be installed with the Installation Wizard,
\r
1189 you should add its description <a href="#xml_files">in the configuration
\r
1190 file</a> and create a bash installation script, following the rules described
\r
1191 in this section. <br>
\r
1192 There are some obligatory functions to be provided in this installation
\r
1193 script. These functions are automatically called by the master installation
\r
1194 script or/and its GUI shell when it is necessary.<br>
\r
1195 File <b>common.sh</b> contains some service functions which can be used
\r
1196 in your installation script, like <b>make_env()</b>,<b> make_dir()</b>,
\r
1197 <b>try_existing()</b>, <b>sort_path()</b>,<b> find_in_path()</b>, etc.
\r
1202 <li class=kadov-p><b>check_version()</b>: This function allows
\r
1203 to check the version of the product already installed on the computer.
\r
1204 It should try to find the product (native or preinstalled in the target
\r
1205 directory) and check it version. This helps to avoid unnecessary reinstallation.
\r
1206 This is internal function and is not called</li>
\r
1208 <li class=kadov-p><b><font style="color: #000000;"
\r
1209 color=#000000>try_native()</font></b><font
\r
1210 style="color: #000099;"
\r
1211 color=#000099>: </font><font style="color: #000000;"
\r
1212 color=#000000>This function is called when
\r
1213 the <i>'use native' </i>installation mode is selected by the user. The
\r
1214 function should try to find the native version of the product and define
\r
1215 the possibility of it usage. It should create the environment for the
\r
1216 product in the temporary directory (see also the description of <b>print_env(</b>)
\r
1217 function). If you do not provide the native mode installation, you can
\r
1218 omit this function.</font></li>
\r
1220 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1221 class=kadov-p><font style="color: #000000;"
\r
1222 color=#000000><b>install_source()</b>: This
\r
1223 function is called when the <i>'install sources</i>' installation mode
\r
1224 is selected by the user. The function is responsible for the building
\r
1225 of the product from the sources package. It should create the environment
\r
1226 for the product in the temporary directory (see also the description of
\r
1227 <b>print_env(</b>) function). If you do not provide the sources mode installation,
\r
1228 you can omit this function</font></li>
\r
1230 <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "
\r
1231 class=kadov-p><font style="color: #000000;"
\r
1232 color=#000000><b>install_binary()</b>: This
\r
1233 function is called when the <i>'install binaries'</i> installation mode
\r
1234 is selected by the user. The function is responsible for the extracting
\r
1235 the product from the binaries package. Should create environment for the
\r
1236 product in the temporary directory (see also the description of <b>print_env(</b>)
\r
1237 function). If you do not provide the binaries mode installation, you can
\r
1238 omit this function.</font></li>
\r
1240 <li class=kadov-p><b>try_preinstalled()</b>: <font style="color: #000000;"
\r
1241 color=#000000>This
\r
1242 function is called when the<i> 'not install'</i> installation mode is
\r
1243 selected by the user. In this case the script should inspect the target
\r
1244 directory to try to find the already preinstalled product, pick up and
\r
1245 check the environment from there. See <a href="#pick_up_env">here</a>
\r
1246 for more details.</font></li>
\r
1248 <li class=kadov-p><font style="color: #000000;"
\r
1249 color=#000000><b>print_env()</b>: This function
\r
1250 is in charge of the environment script creation. It should create a file
\r
1251 with the name </font><b>env_<product_name>.sh</b> in the temporary
\r
1252 directory and then copy it into the product installation directory. The
\r
1253 file should contain all necessary environment variables settings for the
\r
1254 product. It will be collected during the 'pick-up-environment' procedure.</li>
\r
1256 <li class=kadov-p><b>pickup_env()</b>: This procedure corresponds to
\r
1257 the <b>pickupenv</b> tag of the configuration xml file (see previous section).
\r
1258 Should call the <b>make_env</b> procedure to perform the pick-up environment
\r
1259 procedure for the product.</li>
\r
1262 <font style="color: #000000;"
\r
1263 color=#000000>The calling signature of the product installation
\r
1264 script is the following:</font> <b><font style="color: #000000;"
\r
1265 color=#000000><br>
\r
1266 <product_script_name> <function_name> <temp_folder> <products_directory>
\r
1267 <target_directory> <dependancies> <product_name></font></b>
\r
1271 <product_script_name></b> - installation script name (described in
\r
1272 configuration xml file); <b><br>
\r
1273 <function_name></b> - name of the function, corresponding to the
\r
1274 selected installation mode: <i>try_native, install_source, install_binary</i>
\r
1275 or <i>try_preinstalled</i>; <b><br>
\r
1276 <temp_folder></b> - temporary files directory; <b><br>
\r
1277 <products_directory></b> - directory where the sources/binaries package
\r
1278 can be found. You should provide the sources package in the <i><Install_Wizard_root_directory>/Products/SOURCES</i>
\r
1279 directory and binaries package in the <i><InstallWizard_root_directory>/Products/BINARIES/<os_version></i>,
\r
1280 where <os_version> is target platform description, which appears
\r
1281 in the corresponding section of the <a href="#xml_files">configuration
\r
1282 xml file</a>. <b><br>
\r
1283 <target_directory></b> - root target directory where the product
\r
1284 should be installed to; <b><br>
\r
1285 <dependancies></b> - single-quoted list of prerequisite products,
\r
1286 separated by space; <b><br>
\r
1287 <product_name> </b>- product name itself. </p>
\r
1291 <p class="whs19"><i><img src="../pics/exemple.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs20"></i><i>med-2.2.2.sh install_binary /tmp/work ./Products/BINARIES/Mandrake10.1
\r
1292 /usr/salome 'gcc Hdf' med</i> </p>
\r
1294 <p class="whs19"><i
\r
1295 style="font-style: italic;"><span style="background-image:url('../texture_horiz_ltbluebubbles.jpg'); "><font
\r
1296 style="color: #000000;"
\r
1297 color=#000000>C</i>opy the created script into the <i><Install_Wizard_root_directory>/config_files</i>
\r
1298 sub-directory where all installation scripts are stored. Installation
\r
1299 Wizard will automatically search and call your script during the installation
\r
1300 procedure.</font> </span></p>
\r
1311 <script type="text/javascript" language="javascript1.2">
\r
1313 if (window.writeIntopicBar)
\r
1314 writeIntopicBar(0);
\r