|
SALOME Installation Wizard Help |
[ python ] ./runInstall [options]
Without options this script will launch the SALOME Installation
Wizard in the GUI mode.
The default installation settings can be overridden by using of command
line options. Each option has short and long notations:
-g / --gui
-b / --batch
-f FILE / --file=FILE
-d DIR / --target=DIR
-t DIR / --tmp=DIR
-a / --all-from-sources
-s / --single-directory
-h / --help
-v / --version
The installation procedure supports different Linux
platforms and installs various 3d-party installation prerequisite products, which
are required by SALOME platform. The basic target platforms for SALOME
5.0.0 and newer are Linux Mandriva 2008 32bit and Linux Debian 4.0 (Etch) 64bit.
The usage of configuration XML files provides a flexible way to modify
the list of products to be installed by the Installation Wizard without
changing the source code of the application. Just create your own XML
configuration file and implement installation scripts for the prerequisite products you
need and then use this XML file with the Installation Wizard. This can
be done, for example, for some Linux
platform which is not supported directly by the
Installation Wizard. See Modifying XML
configuration file and Implementing installation
scripts for the new products sections for more information.
The GUI of the Installation Wizard has been developed with Qt 3.3.8 toolkit by Trolltech . After launching the Installation Wizard in the GUI mode the wizard window is shown to the user. This wizard guides the user through several subsequent pages. To navigate between the pages use "Next" and "Back" buttons in the lower part of the wizard window. "Cancel" button closes the wizard window and quits the installation procedure after user confirmation. "Help" button opens a window with the help information.
The first "Introduction" page is shown in Figure 1. Skip this page by pressing "Next" button:
Figure 1: "Introduction" page
In the second page you are proposed to select the type of the
SALOME installation.
At this step three possible types of installation are available:
In case you select "Install sources and make compilation" installation type, then you can also check "Remove sources and temporary files after compilation" option.
Figure 2: "Type of installation" page
After the installation type has been selected you click "Next" button and the Installation Wizard tries to determine the Linux platform to load the corresponding configuration file. If the operating system is not defined or the current SALOME package does not support this system, the warning message will appear ("Install binaries" and "Install sources" installation types only):
Figure 3: "Installation platform" page
If "Install sources and make compilation"
installation type has been selected, the warning message will be
slightly different: "Your Linux platform is not supported by
this SALOME package and compilation is not tested on this one".
There is a list of all platforms supported by SALOME, but only those
supported by the current package are available for selection. in this
page you need to to select the reference platform, if you wish to
proceed with the present installation procedure.
Note: this page is not displayed if the installation
platform has been defined automatically.
In the next page you are proposed to enter the target
installation directory for SALOME platform. You can also press "Browse..."
button and choose the destination folder using the standard browse
directory dialog box.
If the necessary directory does not exist you are
prompted to confirm the directory creation. If you type a wrong
directory
path, or if you do not have the permissions to write to the chosen
directory, the corresponding message box is shown.
Note: you are strongly recommended to avoid using directory names containing spaces. Otherwise you can experience some troubles with the installation.
Figure 4: "Installation directory" page
You can select the products to be installed in the "Choice of
the products to be installed" page.
In the default mode it gives you the possibility to view and select
SALOME modules only. There is a hidden list of 3d-party prerequisite
products. To show it, just click "Show prerequisites..."
button.
Figure 5: Choice of the SALOME modules
In the full mode you also have the possibility to select
prerequisites.
The checkbox before each product indicates if this one will be
installed or not (checked or unchecked). The second column shows the
disk space occupied by the corresponding module. This value depends on
the selected type of installation.
To hide the prerequisites list - click "Hide prerequisites"
button.
Figure 6: Choice of the prerequisites
Some products may require some other prerequisite products to be installed. So the installation procedure has a special feature to automatically mark these products in the list view. For example, to install PyQt it is necessary to have gcc, Python, Qt and Sip installed, and these products will be also turned on when you check on PyQt. GEOM module requires KERNEL, GUI modules and such prerequisites as: OpenCascade, Python, Swig, Qt, etc.
The dependencies between SALOME modules are managed in the following way:
Dependency between modules and prerequisites is realized in the following way:
Figure 7: Dependencies between modules and prerequisites
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.
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 "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
install products on your hard drive.
The installation procedure uses a special directory to store
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
are not stored directly in the directory selected by the user. The
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.
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.
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:
Figure 9: "Check your choice" page
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.
Figure 10: "Installation progress" page: not started yet
Note:
in the current
implementation it is not possible to resume the stopped installation
process; the installation will restart from the very beginning.
Figure 11: "Installation progress" page: installation in progress
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.
You can abort the installation and close the installation
procedure
using "Cancel" button.
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:
Figure 12: "Finish installation" page
In this page you can read important information about the
Installation Wizard itself and some tips: how to run and test SALOME or
how to build SALOME from the sources. This is also described the
README file which you can find in the root directory of the
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
customizing these buttons).
Figure 9: Batch mode
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
and KERNEL
module binaries
root directories and env_products.csh
+ env_products.sh and env_build.csh
+ env_build.sh
in the
target installation directory.
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 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 settings files and generates from them two common environment files: salome.sh and salome.csh 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. 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 are able to edit salome.*
files after the installation procedure finished.
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.
<document>
<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> ]
/>
]
[
<button
...
/>
]
...
</buttons>
]
[ <products>
[
<product
name=<product_name>
type=<product_type>
[
description=<product_description> ]
<installation
os=<installation_platform>
version=<product_version>
[
disable=<disable_flag>
]
[
woguimode=<without_gui_mode_flag> ]
installdiskspace=<install_disk_space>
[
pickupenv=<pickup_env_flag>
]
script=<installation_script_name>
/>
...
/>
]
[ <product ...
/>
]
...
</products>
]
[ <dependencies>
[
<product
name=<product_name> >
[
<dep> <prerequisite_name>
</dep>
]
...
</product>
]
...
</dependencies>
]
</document>
where
<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 the target platform description,
which appears
in the corresponding section of the configuration
xml
file.
<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.3.3.sh install_binary
/tmp/INSTALLWORK21797
./Products/BINARIES/Mandriva2006.0
'gcc tcltk tcltk_src Python Python_src Qt Qt_src ... DOCUMENTATION
DOCUMENTATION_src'
Med
'gcc Hdf Med'
./Products/SOURCES
FALSE
./Products/BINARIES/Mandriva2006.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.
where
<product_script_name>
-
the script name itself (retrieved from the XML configuration xml
file);
<function_name>
- the name of the function;
<target_directory>
- the root target
directory where the product is
installed to;
<temp_folder>
- the directory for the temporary files.
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 the sample implementation.
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.