X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=doc%2Freadme.html;h=137f24800cebd8501c2b72842f35f4fb857c42f1;hb=57a88d00ae1e926c9854ea7377647e7fd039a103;hp=f4fadf559d57a365abcc3cf77ce229c0b627f488;hpb=2e622a2f8f8ab4518abed4256b3339645668fb27;p=tools%2Finstall.git diff --git a/doc/readme.html b/doc/readme.html index f4fadf5..137f248 100755 --- a/doc/readme.html +++ b/doc/readme.html @@ -7,7 +7,7 @@ content="Mozilla/4.8 [en] (X11; U; Linux 2.4.18-14 i686) [Netscape]"> - + SALOME Installation Wizard Help
updated for the version 4.1.1
+ color="#ff0000">7.5.1
+

+

Dependency between modules and prerequisites is realized in +the following way:

+ +It is possible to check again the prerequisites, which have been +automatically unchecked. In other words, it is possible to add more +prerequisites than necessary. +


-Products page (dependencies presentation) -

Figure 7: Dependencies between modules and prerequisites +Products page (dependencies presentation) +

Figure 7: Dependencies between modules and +prerequisites

-

The "Installation with GUI" checkbox allows managing the -installation of the graphical interface. If it is unchecked, only "KERNEL" and -"MED" modules are installed with their necessary prerequisites, -and other modules are unchecked with no possibility to check them in this mode (see figure below).
-By default this checkbox is switched on. +

The "Installation with GUI" checkbox allows +managing the installation of the graphical interface. Only modules for that +'woguimode' attribute is set to "true" value in the XML file +(see here for more information about +customizing this installation mode) support without GUI mode and +will be checked and installed with their necessary prerequisites in +case of installation without GUI. And other modules are unchecked with no +possibility to check them in this mode (see figure below).
+By default 'Installation with GUI' checkbox is switched on.


-Products page (Installation without GUI) -

Figure 8: Installation MED without GUI mode +Products page (Installation without GUI) +

Figure 8: Installation without GUI mode

-

The box at the right side of the page displays the information about -the currently selected product: name, version and short description, -required disk space, disk space required for the temporary files and -the list of prerequisites (this information is provided in the XML file). +

The box at the right side of the page displays the information +about the currently selected product: name, version and short description, +required disk space, disk space required for the temporary files and +the list of prerequisites (this information is provided in the XML +file).

-

The "Disk space required:" field displays how much -disk space on the hard drive is required for installation of the selected +

The "Disk space required:" field displays +how much +disk space on the hard drive is required for installation of the +selected products.
-Note: please, take into account that the displayed amount of -the required disk space is approximate and may differ when you actually +Note: please, take into account that the displayed +amount of +the required disk space is approximate and may differ when you actually install products on your hard drive.

The installation procedure uses a special directory to store -temporary files. The "Space for temporary files" field shows +temporary files. The "Space for temporary files" +field shows the information about the required disk space on the hard drive for extracting and compiling the selected products. You can change the -temporary directory (this information is provided in the XML file) -to the folder you want.
-Note: actually, the temporary files +temporary directory (this information is provided in the XML file) to +the folder you want.
+Note: +actually, the temporary files are not stored directly in the directory selected by the user. The -Installation Wizard creates in this directory an additional folder named +Installation Wizard creates in this directory an additional folder +named like INSTALLWORKXXXXX where XXXXX is a unique number. This allows launching several Installation Wizards simultaneously. This temporary directory is removed automatically when the installation finishes.

-

The installation procedure also checks the available disk space. If -there is not enough disk space on your hard drive you will see -the corresponding error message box. +

The installation procedure also checks the available disk +space. If +there is not enough disk space on your hard drive you will see the +corresponding error message box.

-

Also in the current version of Installation Wizard is possible -to install all binaries of the selected SALOME modules into a -single directory. It is "SALOME" directory. -For this purpose there is a checkbox "Install modules to a single directory" -checkbox exists (see Fig.8).
-This feature helps to get shorter PYTHONPATH and LD_LIBRARY_PATH +

Also in the current version of Installation Wizard is possible +to install all binaries of the selected SALOME modules into a single +directory. It is "SALOME" directory. +For this purpose there is a checkbox "Install modules to a +single directory" checkbox exists (see Fig.8).
+This feature helps to get shorter PYTHONPATH and LD_LIBRARY_PATH environment variables.
-Note: the installation into a single directory is available with the -binaries installation type only. +Note: the installation into a single directory is +available with the binaries installation type only.

-

To proceed further, click "Next" button. At this moment -the program will make some tests to check the installation settings: -if there is enough disk -space on the hard drive, check for the dependencies for each product -you have selected to be installed. If any test fails you will see -the corresponding warning message box. Otherwise the wizard will -proceed to the next page: +

To proceed further, click "Next" button. +At this moment +the program will make some tests to check the installation settings: if +there is enough disk space on the hard drive, check for the +dependencies for each product you have selected to be installed. If any +test fails you will see the corresponding warning message box. +Otherwise the wizard will proceed to the next page:


-Choice page +Choice page

Figure 9: "Check your choice" page

-

This page summarizes the installation options you've selected in the +

This page summarizes the installation options you've selected +in the previous pages. You can review again your choices and change them if necessary returning to the previous pages.
-When you are sure that everything is OK, press "Next" button to -follow to the progress page. +When you are sure that everything is OK, press "Next" +button to +follow to the progress page.


-Progress page (not started yet) -

Figure 10: "Installation progress" page: not started yet +Progress page (not started yet) +

Figure 10: "Installation progress" page: +not started yet

-
To start the installation of the selected -products click "Start" +
To start the installation +of the selected products click "Start" button. It launches the shell installation script and you will be able -to see the output of the script in the topmost frame of the dialog box. If any -errors occur during the installation progress, the corresponding messages -will be printed to the log window in the bold red font.
+to see the output of the script in the topmost frame of the dialog box. +If any errors occur during the installation progress, the corresponding +messages will be printed to the log window in the bold red font and +installation process will be aborted with error message box. But user +has possibility to change this default behaviour by +"Ignore errors" checkbox. It is necessary to check +it before start and all occured errors will be passed, +and installation will be continued in any case.
It is possible to break the installation at any time by pressing "Stop" button. Then you can get back to the previous pages if you wish to -change the installation settings or restart the installation by pressing "Start" button again.
+change the installation settings or restart the installation by +pressing "Start" +button again.

Note: in the current @@ -409,35 +453,38 @@ implementation it is not possible to resume the stopped installation process; the installation will restart from the very beginning.


-Progress page (installation started) -

Figure 11: "Installation progress" page: installation in +Progress page (installation started) +

Figure 11: "Installation progress" page: +installation in progress

-

The "Installation Status" frame window shows you the -progress of installation. "Waiting" status +

The "Installation Status" frame window +shows you the +progress of installation. "Waiting" +status means that the installation of this product has not started -yet. The product currently being installed is marked as "Processing" and is displayed in the status bar -under "Installation Status" view. All installed products have -"Completed" status. +yet. The product currently being installed is marked as "Processing" and is displayed in +the status bar under "Installation Status" view. All installed products +have "Completed" +status.

-

You can abort the installation and close the installation procedure +

You can abort the installation and close the installation +procedure using "Cancel" button.
-Note: this button sends the +Note: this +button sends the signal "SIGTERM" to the shell script. The script tries to clear all temporary files. The process of removing the temporary files can take some time, so the installation wizard will wait for 3 seconds before closing.

-

At the end of the installation "Installation completed" message will -appear in the status bar. You can return to the previous pages -to start a new installation or click "Next" button -to go to the readme page:

+

At the end of the installation "Installation completed" +message will appear in the status bar. You can return to the previous +pages to start a new installation or click "Next" +button to go to the readme page:


-Readme page +Readme page

Figure 12: "Finish installation" page

@@ -449,517 +496,322 @@ Installation Wizard.
You can also launch SALOME Desktop from this page or read the Release Notes file by clicking on the corresponding buttons in the lower part of the page (see here -and here for more information about +and here for more +information about customizing these buttons).

- -

Environment files

+ +

Environment +files

During the process of installation the script creates some environment files to simplify the procedure of launching SALOME. These shell scripts set all necessary environment variables for all products you have installed. -To learn how the installation scripts collect the environment, see here. These files are: salome.csh + salome.sh -in the KERNEL module sources +To learn how the installation scripts collect the environment, see here. These files are: salome.csh ++ salome.sh +in the KERNEL module +sources and KERNEL -module binaries root directories and env_products.csh +module binaries +root directories and env_products.csh + env_products.sh and env_build.csh -+ env_build.sh in the ++ env_build.sh +in the target installation directory.

-Note: there is some difference +Note: there +is some difference between these files: env_build.* files are optimized to -be used for the building of SALOME modules from sources (see README file provided with the +be used for the building of SALOME modules from sources (see README file +provided with the installation procedure on the CD). The env_products.* -(and salome.*) files are +(and salome.*) +files are optimized for the SALOME launching. The behavior is defined by the environment variable ENV_FOR_LAUNCH -which is set to 0 in -env_build.* files and to 1 in +which is set to 0 +in +env_build.* files and to 1 +in env_products.* (salome.*) files.


-

Notes on -check products version procedure

-Unfortunately under Linux platform there is no exact algorithm to -identify the product version. The information in this section gives -an idea of how the -version is checked for the native/preinstalled products (this -information refers to the base platform Linux Mandriva 2006; -and the same algorithms are used for other platforms).
-The general rule for all products is that the path to the binaries -should be set via PATH -environment variable, the path to the libraries should be set via LD_LIBRARY_PATH variable and the -python modules should be available via PYTHONPATH -variable.
-Note: the information given in -this section refers to the prerequisite products for SALOME version -4.1.1.
- -The version number is checked by gcc --dumpversion command. gcc -executable should be in the PATH -environment variable. The version number should be equal to the "4.0.1".
- -The version number for tcl/tk can -be found in tclConfig.sh and tkConfig.sh files (TCL_VERSION and TK_VERSION variables -correspondingly). The version number should be equal to "8.4" -(the release number is not checked).
-Set TCLHOME environment -variable to the root directory of tcl/tk installation.
- -The version number is defined by version.hpp -file which is part of the boost distribution. This file defines BOOST_VERSION macro which should be -equal to "103401". In addition the existence of boost libraries is -checked.
-Set BOOSTDIR -environment variable if you have a preinstalled version of -boost.
- -The version number is checked by python -V -command. python executable -should be in the PATH -environment variable. The version number should be equal to "2.4.4".
-Set PYTHONHOME environment -variable if you have a preinstalled version of Python.
- -The version number is checked by swig --version command. swig -executable should be in the PATH -environment variable. The version number should be equal to "1.3.31".
- -The version number is defined by qglobal.h -file which is a part of the Qt distribution. This file defines QT_VERSION_STR macro which should be -equal to "3.3.8".
-Set QTDIR environment -variable if you -have a preinstalled version of qt.
- -msg2qm is a Qt tool which is used -to -convert text *.po files to *.qm resource files. Unfortunately this tool -is not included into the Linux distribution and is provided only in Qt -sources -package. This is the reason why this tool is supplied with the SALOME -Installation Wizard.
-There is no way to check the version number of msg2qm tool. Just set MSG2QM_ROOT environment -variable if you have a preinstalled version of msg2qm tool - -The version number is defined by Standard_Version.hxx -file which is part of the Open CASCADE distribution. This file defines OCC_VERSION_MAJOR, OCC_VERSION_MINOR and OCC_VERSION_MAINTENANCE macros which -should refer to version 6.2sp3.
-Set CASROOT environment -variable if you have a preinstalled version of Open CASCADE.
- -The version number is defined by qwt_global.h -file which is part of the qwt distribution. This file defines QWT_VERSION_STR macro which should -be equal to "4.2.0".
-Set QWTHOME environment -variable if you have a preinstalled version of qwt.
- -The version number is defined by libhdf5.settings -file which is part of the hdf5 -distribution. The version should be equal to 1.6.4.
-Set HDF5HOME environment -variable if you -have a preinstalled version of hdf5.
- -Unfortunately there is no formal way to check med version -number. We check existence of libmed.so.1.0.2 library on the computer. -If you have any problems with the preinstalled version of med, please, reinstall -it.
-Set MED2HOME environment -variable if you -have a preinstalled version of med.
- -Unfortunately there is no formal way to check VTK version -number. We just check existence of libvtkCommon.so -library on the computer and hope that it is of version we need. If you -have problem with preinstalled version of Vtk, please, reinstall it.
-Set VTKHOME environment -variable if you -have preinstalled version of Vtk.
- -We just check existence of some omniORB libraries and executable on the -computer, like libomniORB4.so.0.5, -_omnipymodule.so.2.4, libCOSNotify4.so.0.1 and notifd.
-Set OMNIORBDIR environment -variable if -you have preinstalled version of omniORB products.
- -The version number is checked by sip -V -command. sip executable should -be in the PATH -environment variable. Version number should be equal to "4.7.3".
-Set SIPDIR environment -variable to the -directory where you have sip executable preinstalled.
- -The version number is defined by pyqtconfig.py -Python module file which is part of the PyQt distribution. Version should be -equal to "3.17.4".
-Set PYQTDIRenvironment -variable if you -have preinstalled version of PyQt. - -Unfortunarely we can't find anything about -netgen version. We just check if NETGENROOT -environment varible is set.
-Set NETGENROOT -environment -variable if you have preinstalled version -of netgen mesher.
-Note: netgen 4.5 provided with -the SALOME installation Wizard has been patched to improve its -performance.
- -The version number is checked by python --c -'import Numeric; print Numeric.__version__' command. python executable should be in the PATH -environment variable and Numeric -module should be avaible for the Python (for example it should be in -the PYTHONPATH environment -variable). Version number should be equal to "24.2". If you have -problem with preinstalled version of Numeric 24.2, please, -reinstall it.
-Add the directory where you -have preinstalled version of Numeric -package to the PYTHONHOME environment -variable.
- -The version number is checked by dot -V -command. dot executable should -be in the PATH -environment variable. Version number should be equal to "2.16.1".
-Add graphviz bin directory to -the PATH environment variable.
- -The version number is checked by doxygen ---version command. doxygen -executable -should be in the PATH -environment variable. Version number should be equal to "1.4.7".
- -For each SALOME module sources package (KERNEL, GUI, GEOM, etc...) root -directory contains file configure.in (configure.ac) which defines -version -information.
-Set <MODULE>_SRC_DIR -environment variable for each SALOME MODULE -sources package installed (where MODULE -is KERNEL, GUI, GEOM, ...).
- -For each SALOME module binaries package (KERNEL, GUI, GEOM, etc...) bin/salome directory contains file VERSION which defines version -information.
-Set <MODULE>_ROOT_DIR -environment variable for each SALOME MODULE -binaries package installed (where MODULE -is KERNEL, GUI, GEOM, ...).
-

If you have native products installed to different from -default -directories (not /usr/bin, /usr/lib...), it is -recommended to follow above mentioned instructions. Or you should -properly set PATH and LD_LIBRARY_PATH variables before -starting the Installation Wizard. Otherwise -the installation script will fail to find preinstalled/native products. -

-

Note: for some native products (e.g. gcc, Python) the rules -of version -checking are not so strict as described in the table. Only major and -minor numbers of version -should coincide with prerequisite. Newer version of the product can be -used also. If some native product has version number larger than that -required by -the -installation procedure, user will be prompted by the warning message -like this: "You have -newer version of gcc installed -on your computer than that is required (3.4.1). Continue?". You can -press "Yes" button -to proceed with the installation but in this case you should be aware -of what you are doing. -SALOME binaries (including other products) are compiled with the -predefined prerequisites -and most likely can not be run successfully if these products are not -found. -This can be helpful only if you plan to build all products from -sources.
-

-

-

Pick up the environment

Please, read carefully the following information. This section describes how the installation procedure generates the environment scripts for the SALOME platform being installed. -

After installing of each product shell the script creates special +

After the installation of each product the shell script +creates a special environment file for the product in its installation folder. The name -of -the file is generated -from -the name of product by the following scheme: env_<product_name>.sh +of the file is generated from the name of the product by the following +scheme: env_<product_name>.sh (for example env_Vtk.sh for the Vtk). This file includes all necessary environment settings. At the final -step of the installation the script picks up all the -settings files and generate from them two common environment files: salome.sh +step of the installation the script picks up all settings files and +generates from them two common environment files: salome.sh and salome.csh -for bash and csh shells correspondingly. Such -approach helps to save time -when reinstalling products and you may not to care about setting all -environment variables -manually to build/launch SALOME. What you need is just to source one of -these -environment files.

-

This concerns also those products which are not being installed. +for bash +and csh +shells correspondingly. This +approach helps to save time when reinstalling products and you may can +avoid setting all environment variables +manually to build/launch SALOME. What you need is to source one of +these environment files.

+

This also concerns the products which are not being installed. For example, you install some SALOME binaries to the directory where -you have previously installed other products.  Installation -procedure tries to collect environment files from the target -directory if it finds necessary products installed there. If some -product is not -found in the target directory the corresponding -section of salome.sh/salome.csh files will be skipped.
-For native products (like gcc, tcl, etc...) -installation procedure tries to find them first using PATH -/ LD_LIBRARY_PATH variables and then in the system default -directories (/usr/bin, /usr/lib etc., depending on the product). +you have previously installed other products.  The +installation +procedure tries to collect the environment files from the target +directory if it finds necessary products installed there. If a +product is not found in the target directory the corresponding +section of salome.sh/salome.csh files will be +commented.
+For the native products (like gcc, tcl, etc...) +the installation procedure tries to find them first using PATH +/ LD_LIBRARY_PATH variables and then in the system +default +directories (/usr/bin, /usr/lib etc., depending on +the product).

-

In any case you may edit salome.* files after installation -procedure finishes, if you want.
+

In any case you are able to edit salome.* +files after the installation procedure finished.

-Note:
as it was mentioned above there -are another environment files which -are generated by the installation procedure: env_products.csh + env_products.sh and env_build.csh + env_build.sh. These files can be +Note: as it has been mentioned above +there +are other environment files generated by the installation procedure: env_products.csh + env_products.sh and env_build.csh + env_build.sh. These +files can be found in the target installation root directory.


Modifying XML configuration file

-You can create your own XML configuration file. -The Installation Wizard then can take it as command line argument to -provide list of products you want to install with it. The list of -products and some another settings for the Installation Wizard are -provided in the XML file. The default file which Installation Wizard -looks -for if no command line arguments are given, is config.xml.
-This -section describes the structure of the configuration file.

-XML tags are in bold blue, optional sections/tags +You can create your own XML +configuration file. +The Installation Wizard can take it as a command line argument to +provide a list of products you want to install with it. The list of +products and some other settings for the Installation Wizard are +provided in the XML file.
+This section describes the structure of the configuration file.
+XML tags are in bold blue, optional +sections/tags are in brackets.

<document>
-    [ <config -[ version=<install_wizard_version> ]
-      -        [ -caption=<install_wizard_caption> ]
-      -        [ -copyright=<install_wizard_copyright>  ]
-      -        [ -license=<install_wizard_license_info> ]
-      -        [ os=<target_platform> -]
-      />

-    ]

-    [ <path   -[ targetdir=<target_directory> ]
-       -       -[ tempdir=<temp_directory>     ]
-      />

-    ]

-    [ <button -  label=<button_label>     
+      + +<config +[ version=<application_version> +     ]
+      +  +      [ +caption=<application_caption> +     ]
+      +  +      [ +copyright=<application_copyright>  ] +
+      +  +      [ +license=<application_license_info> ]
+      +  +        +platforms=<target_platform>
+      +  +      [ +targetdir=<target_directory> +      ] +
+      +  +      +[ +tempdir=<temp_directory>      +     ] +
      +        [ +optionallibs=<optional_libraries>  ] +
+      />
+
+    +[ <buttons> +
+      +[ <button +  +label=<button_label>      +
         -     +       [ tooltip=<button_tooltip> ]
         -     -  script=<button_script>   
-              -[ disable=<disable_flag>   ]
-      />

+  +script=<button_script>   
+
+       +         +[ disable=<disable_flag>   ]
+        /> +

+      ]

+      +[ +<button +...
+        />
+
+      +]
+        +... +
+      </buttons> +

    ]

-    [ <button ...
-      />

-    ]
-    [ <product  +    [ <products> +
+      +[ +<product  name=<product_name>
-       -         -version=<product_version>
-              [ -context=<product_context>         -]
-              [ +     +  +           +type=<product_type>
+        +        [ description=<product_description> ]
-        -        -install=<installation_mode>
-       -         -supported=<supported_installation_modes>
-        -      [ disable=<disable_flag> -           ]
-              [ -pickupenv=<pickup_env_flag>       ]

-          -      -dependancies=<list_of_prerequisites>
 
-           -     installdiskspace=<install_disk_space>
+          + +<installation  +os=<installation_platform>
+     +     +   +            +version=<product_version>
+      +    +       +      [ +disable=<disable_flag> +           ] +
      +    +       +      [ +woguimode=<without_gui_mode_flag> ]
-            -    temporarydiskspace=<tmp_disk_space>

-             -   script=<installation_script_name>

-      />
+            +             +installdiskspace=<install_disk_space>
+       +           +     [ +pickupenv=<pickup_env_flag> +      ]
  +
+           +  +     +       +script=<installation_script_name>

+          +/>
+          +... +
+        />
+
+      ]

+      [
<product ...
+        />

+      ]

+        +...
+      </products> +
+    ]
+    [ <dependencies>
-    ]

-    [
<product ...
-      />
+      +[ +<product  +name=<product_name> >
+        +[ +<dep> <prerequisite_name> + </dep> +]
+          +...
+        </product>
-    ]

-    ...
+      +]
+        +...
+      </dependencies> +
+    ]
-</document>

-
-

<config> section

-This is optional section; it provides general -information about Installation Wizard itself.
+</document>

+ +

<config> +section

+This section provides general +information about an application that will be installed.

Attributes:
-The application version number to be shown in the +The application version number to be +shown in the caption. -The application main window caption - if this -string contains '%1' text the title will -contain -in this place the version number (see above). +The application main window caption +- if this +string contains '%1' text the title will contain +the version number in this place (see above). @@ -968,39 +820,79 @@ copyright information (shown in the first page). -The application license information (shown in the +The application license information +(shown in the first page). -This parameter defines the directory (relative -from ./Products/BINARIES) where the Installation Wizard will -search precompiled binaries packages. If this tag is not provided, -binaries packages are looked for in -the ./Products/BINARIES directory. -

<path> section

-This is optional section; it defines default installation directories.
-
-Attributes:

+This parameter defines platforms for +whose the configurations from this file will be used. Also it provides +the directory name (relative from ./Products/BINARIES) where the +Installation Wizard will search for precompiled binaries packages. The target -directory - the path to the directory where products should be +directory is the path to the directory where the products should be installed. -The temporary directory - +The temporary directory is the path to the directory for the temporary files. +
    +
  • optionallibs
  • +
+A list of names of libraries. +An absence of these libraries in the user's system +doesn't affect on the correct work of SALOME platform. +

<buttons> section

+This is an optional section and may contains one or more +<product> sections. +

<button> section

+This optional section allows customization of the last "Finish +installation" page of the Installation Wizard by adding one +or +more buttons in the lower part of the Installation Wizard window. The +script +which is attached to each such button, can perform some specific +actions, for example, launch the application or show the 'Release +Notes' +file by using an external program. +See here for more +details about +writing scripts.
+
+Attributes:

+
    +
  • label
  • +
+This is the button text. +
    +
  • tooltip
  • +
+The button tooltip (optional). +
    +
  • script
  • +
+The script attached to the button. +
    +
  • disable
  • +
+If this optional flag has 'true' +value, the corresponding button will not appear in the "Finish +installation" page - the section of XML file is ignored.
+

<products> section

+This one contains a list of <product> sections. The +products appear in the tree view and are installed in the order they +are described in this section.

<product> section

-This section describes product to be installed with the Installation -Wizard. XML file should include <product> section for each -product to be installed. The products appear in the tree view -and are installed in the order they are described in the configuration -file. It is recommended (but not obligatory) to define native products -at the top of the -list before all other products.
+Current section is optional. It describes the product to be installed +with the Installation +Wizard. The <products> container should include +<product> section for each +product to be installed.

Attributes:

The name of the product. -The version of the product. +The type of the product: 'component' +- SALOME module or 'prerequisite' - prerequisite +product. The product description (optional). +

<installation> section

+It is a part of the <product> section, that provides +installation information by platforms. The <product> +section may contains a several <installation> ones for +the different platforms. +
+
+Attributes:

-Context (optional). The possible values are 'salome -sources', 'salome -binaries' and 'prerequisite' (several context can be given -separated by ":" symbol). - -Supported modes of -installation. Several modes can be separated by comma. Possible value -are: install sources, install binaries, use -native. Installation script should contain the corresponding -functions -for each of the supported installation modes (see here). +A possible installation platform. -Default (starting) -installation mode. +The version of the product. @@ -1045,35 +933,27 @@ installation mode.
value, the corresponding product will not appear in the list of products and will not be installed. -This flag points that pickup environment -procedure -should be performed for this product. If this flag equal to 'true', - salome.sh -and salome.csh files will  be created in the product's -installation -directory. Usually this option is set to true for SALOME KERNEL module -sources and binaries package. This is optional key, default value is -'false'.
- -List of prerequisite -products, which are necessary to build this product, separated by comma. +This optional flag defines that +it's possible to install this module without GUI. -Total amount -space (integer, in Kbytes), which product occupies on the hard drive -after the -installation. +List of three total amount spaces +(integer, in Kbytes, derived by comma), which product occupies on the +hard drive after the installation in case 'binary', 'sources' and +'sources and compile' installation type. -Disk space -(integer, in Kbytes) for the temporary files, which is necessary to -build the product from the sources. +This flag shows that the pickup environment +procedure should be performed for this product. If this flag equal to +'true', + salome.sh and salome.csh files will  be created in +the product's +installation directory. Usually this option is set to true for SALOME +KERNEL module. This is optional key, default value is 'false'.
@@ -1084,36 +964,6 @@ automatically by the Installation Wizard when necessary from the main program. See the next section for more information.
-

<button> section

-This is optional section. It allows customing of the last "Finish -installation" page of the Installation Wizard by adding one or -more buttons in the lower part of the wizard's window. The script -which is attached to each such button, can perform some specific -action, for example, launch the application or show the Release Notes -file by using external program. -See here for more details about -writing scripts.
-
-Attributes:

- -This is the button text. - -The button's tooltip (optional). - -The script attached to the button. - -If this optional flag has 'true' -value, the corresponding button will not appear in the "Finish -installation" page - the section of XML file is silently -ignored.

Note: If you add new products to be installed with Installation Wizard, you should also provide @@ -1125,8 +975,10 @@ details.

Implementing installation scripts for the new products

When you want some product to be installed with the Installation -Wizard, you should add it's description it in the -configuration file and create the installation script, following +Wizard, you should add it's description it in +the +configuration file and create the installation script, +following rules described in this section.

There are some obligatory functions which should be implemented in this @@ -1134,7 +986,8 @@ installation script. These functions are automatically called by master installation script or/and its GUI shell when it is necessary.
-File common.sh contains some service +File common.sh +contains some service functions which can be used in your installation script, like make_env(), make_dir(), try_existing(), sort_path(), @@ -1151,146 +1004,181 @@ its version. This helps to avoid unnecessary reinstallation. This is internal function and is not called from the master installation script.
    -
  • try_native()
  • +
  • install_binary()
This function is -called when 'use native' installation mode is selected by the -user. The function should try to find native version of the product and -define possibility of its usage. It should create the environment file -for the -product in the temporary directory (see also description of print_env() -function). It is not necessary to -implement -this function if you do not provide native -mode. installation.
+called when 'Install binaries' installation mode is +selected by +the user. The function is responsible for the extracting of the product +from the binaries package. It should create environment for the product +in +the temporary directory (see also the description of print_env() +function). It is not necessary to implement this function if you do not +provide binaries mode +installation for the current product.
  • install_source()
This function is -called when 'install sources' installation mode is selected by -the -user. The function is responsible for the building of the product from -the -sources package. It should create the environment file for the product -in the -temporary -directory (see also description of print_env() function). It is not necessary to -implement -this function if you do not provide sources mode installation. +called to install SALOME modules sources, if 'Install binaries' +installation mode is selected by the user, and to install prerequisite +products sources, in 'Install sources' case (see Fig.2 above). The +function is responsible for the building of the product from +the sources package. It should create the environment file for the +product +in the temporary directory (see also the description of print_env() +function). It is not necessary to implement this function if you do not +provide a sources mode installation for the current product.

  • install_source_and_build()
This function is -called when SALOME module is installed and the --all-from-sources (-a) option is used ("Build SALOME sources" check box in -GUI mode). This function should be used to unpack SALOME sources -package and then call build/install procedure for it.
-For more details please refer to the this -and this sections for more details.
-
-
    -
  • install_binary()
  • -
-This function is -called when 'install binaries' installation mode is selected by -the -user. The function is responsible for the extracting of the product -from -the binaries package. It should create environment for the product in -the -temporary -directory (see also description of print_env() function). It is not necessary to -implement -this function if you do not provide binaries mode -installation.
+called when 'Install sources and make a compilation' +installation mode is selected. This function should be used to unpack +SALOME or prerequisite sources package and then call build/install +procedure for it.
+For more details please refer to this +section for more details.
  • try_preinstalled()
This function -is called when 'not install' installation mode is selected by -the user. In this case script should inspect target directory to try to -find already preinstalled product, pick up and check environment from -there. See here for more details. +is used to parse the target directory to try to find an already +installed product, to pick up and to check the environment from +there. See here for more +details.
-This function is in -charge of creation environment script. It should create file with name env_<product_name>.sh -in the temporary directory and then copy it into the product -installation directory. The file should contain all necessary -environment variables settings for the product. It will be collected -during the 'pick-up-environment' procedure. +These functions are in charge of the +creation of the environment scripts. They should create in the +temporary directory two files with env_<product_name>.sh +and env_<product_name>_src.sh +names and then copy them into the binary and sources product +installation directories correspondingly. The file should contain all +necessary +environment variable settings for the product. It will be collected +during the 'pick-up-environment' procedure. -This procedure corresponds pickupenv -tag -of the configuration xml file (see previous section). It should call make_env -procedure to perform pick-up environment procedure for the product.
+This procedure corresponds to pickupenv tag +of the configuration xml file (see the previous section). It should +call make_env +procedure to perform the pick-up environment procedure for the product.

-The calling signature of the product installation +The calling signature of the product +installation script is the following:
-<product_script_name> -<function_name> <temp_folder> <products_directory> + +<product_script_name> +<function_name> +<temp_folder> +<products_directory> <target_directory> -<dependancies> <product_name> +<all_products> +<product_name> +<install_products> +<sources_directory> +<remove_sources_flag> +<binaries_directory> +<single_directory_flag>

where

-

<product_script_name> - -installation -script name (described in configuration xml file);
-<function_name> - the name of -function, corresponding to the selected installation mode: try_native, -install_source, install_binary or try_preinstalled;
-<temp_folder> - temporary files -directory;
-<products_directory> - directory +

<product_script_name> +- +the name of the installation script (described in the configuration XML +file);
+<function_name> +- the name of +the function, corresponding to the selected installation type and +currently installed product;
+ +<temp_folder> - the directory for the +temporary files;
+<products_directory> +- the directory where the sources/binaries package can be found. You should provide sources package in the <Install_Wizard_root_directory>/Products/SOURCES directory and binaries package in the <InstallWizard_root_directory>/Products/BINARIES/<os_version>, -where <os_version> is target platform description, which appears +where <os_version> is the target platform description, +which appears in the corresponding section of the configuration xml file.
-<target_directory> - root target -directory where product should be installed to;
-<dependancies> - single-quoted list -of prerequisite products, separated by space;
-<product_name> - product name -itself.

+ +<target_directory> - the root target +directory where the product should be installed to;
+ +<all_products> - single-quoted list +of all products, separated by space;
+ +<product_name> - product name +itself;
+ +<install_products> - single-quoted list +of all products to be installed, separated by space;
+ +<sources_directory> - the directory +where the sources package can be found (it is usable if the +<products_directory> parameter gives the binaries +directory path);
+ +<remove_sources_flag> - bool parameter, that +is equal to 'TRUE' if 'Remove sources and temporary files after +compilation' option has been selected by the user (see Fig.2 in the GUI part);
+ +<binaries_directory> - the directory +where the binaries package can be found (it is usable if the +<products_directory> parameter gives the sources +directory path);
+ +<single_directory_flag> - bool parameter, +that is equal to 'TRUE' if 'Install modules to a single directory' +option is selected by the user (see Fig.5 +above).
+

Example:
-med-2.2.3.sh install_binary /tmp/work -./Products/BINARIES/Mandrake10.1 /usr/salome 'gcc Hdf' med

-

Copy created script into the <Install_Wizard_root_directory>/config_files -sub-directory where all installation scripts are stored. Installation -Wizard -will automatically search and call your script during the installation +med.sh install_binary +/tmp/INSTALLWORK21797 +./Products/BINARIES/Mandriva2010.0 +'gcc tcltk tcltk_src Python Python_src Qt Qt_src ... DOCUMENTATION +DOCUMENTATION_src' +Med +'gcc Hdf Med' +./Products/SOURCES +FALSE +./Products/BINARIES/Mandriva2010.0 +

+

Copy the created script +into +the <Install_Wizard_root_directory>/config_files +sub-directory where all installation scripts are stored. The Installation +Wizard will automatically search and call your script during the +installation procedure.



Customizing Readme page buttons

-The Installation Wizard allows customizing the look-n-feel of the last -"Finish installation" page. If you want to add one or more -buttons to this page in order to perform some specific actions at the -end of the installation (for example, show Release Notes file by using +The Installation Wizard allows customizing the layout of the last +"Finish installation" page. If you want to add one +or more +buttons in this page to perform some specific actions at the +end of the installation (for example, show the 'Release Notes' file by using Open Office) you can put an additional section to the XML -configuration file. This is the <button> section (see here for more details). -


-

-To implement the action which will be performed when the user click on -the button, you need to create a script and put it to the -<Install_Wizard_root_directory>/config_files directory.
+configuration file. This is the <button> +section (see here for more +details).
+
+To implement the action which will be performed when the user clicks on +the button, you need to create a script and to put it into the +<Install_Wizard_root_directory>/config_files +directory.
There are some obligatory functions which should be implemented in this script. These functions are automatically called by the Installation Wizard GUI. @@ -1298,44 +1186,54 @@ Wizard GUI.
  • check_enabled()
  • This procedure is called by the Installation Wizard when the -"Finish installation" page is displayed and the status of the +"Finish installation" page is displayed and the +status of the buttons should be modified according to the installation options. This -procedure should return 0 if the corresponding action can be -performed and, thus, the button should become enabled. Otherwise, it -should return 1 - in this case the corresponding button will be +procedure should return 0 if the corresponding +action can be +performed and, thus, the button should be enabled. Otherwise, it +should return 1 - in this case the corresponding +button will be disabled.
    • execute()
    This procedure is invoked when the user clicks the button. This -procedure should return 0 if the corresponding action is done +procedure should return 0 if the corresponding +action is carried out successfully and 1 if any error occurs.

    The calling signature of the script is the following:
    <product_script_name> -<function_name> <target_directory> <temp_folder> +<function_name> <target_directory> +<temp_folder>

    where

    -

    <product_script_name> - +

    <product_script_name> +- the script name itself (retrieved from the XML configuration xml file);
    <function_name> -- the name of function;
    -<target_directory> - root target -directory where product are +- the name of the function;
    +<target_directory> +- the root target +directory where the product is installed to;
    <temp_folder> - - temporary files directory;
    + - the directory for the temporary files.


    -Note: The standard Installation Wizard buttons "Launch +Note: The standard Installation Wizard buttons +"Launch SALOME" and "Release Notes" are implemented with this feature. Refer to the scripts start_salome.sh and -release_notes.sh for sample implementation.
    +release_notes.sh for the sample implementation.

    -Note: Any button (even standard) can be ignored by the -Installation Wizard if the attribute <disable> in the XML +Note: Any button (even standard) can be ignored by +the +Installation Wizard if the attribute <disable> +in the XML configuration file is set to the "true" value.



    - +