X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=README;h=f5d23367c3460304e7660585edbd96bfb30d6715;hb=0112887d4aa0e0a961cc23388ab3855a83838cc6;hp=bbd72b4f964d2ad9f3204da04f3276c3123a4d2f;hpb=60c1923238aab38cccbb2bcad2c012e31e33f83a;p=tools%2Finstall.git diff --git a/README b/README index bbd72b4..f5d2336 100644 --- a/README +++ b/README @@ -19,6 +19,7 @@ 4. How to build SALOME modules from sources 4.1. General procedure 4.2. Automatic build procedure: build.csh script + 4.3. Build SALOME using cmake ================================================================================ @@ -27,18 +28,18 @@ The Installation Wizard can be launched in two modes: GUI and batch. The root directory of the Installation Wizard contains Python script runInstall. To run the Installation Wizard just type - runInstall in the terminal window: + ./runInstall in the terminal window: - [ python ] runInstall [] + [ python ] ./runInstall [] - Without opstions this script will launch the SALOME Installation - Wizard in the default mode (GUI). The default mode can be - overriden by using command line options. Each option has short - and long notations: + Without any option this script will launch the SALOME Installation + Wizard in the default mode (GUI) with the default installation + parameters. The default mode can be overridden by using command + line options. Each option has short and long notations: -g / --gui - Runs the Installation Wizard in the GUI mode (this is default + Runs the Installation Wizard in the GUI mode (this is the default mode). -b / --batch @@ -47,39 +48,46 @@ -f FILE / --file=FILE - The XML configuration file to be used by the Installation Wizard. + Defines the XML configuration file to be used by the Installation Wizard. + If the appropriate file is not found, the warning message is shown. If this option is not used then the installation script tries to - define the Linux version and use the corresponding XML file if it - is present. For examle, for the Linux Mandrake 10.1 the - config_Mandrake_10.1.xml file will be used by default. If the - appropriate file is not found, the file config.xml will be - used. This file refers to the basic target platform which is - Linux Mandrake 10.1 for SALOME 3.0 and newer. If config.xml file - is also not found, the warning message box is shown (in GUI mode) - or printed to the console (in batch mode) and the Installation - Wizard quits. + define the Linux version and use the corresponding XML file. + For example, for the Linux Mandriva 2010.0 the config_Mandriva_2010.0.xml + file will be used by default. -d DIR / --target=DIR - The target directory SALOME platform to be installed to. If used, - this option overrides the default target directory, given in the - configuration XML file (usually ${HOME}/salome_, see - here for more detail). + Defines the target directory for SALOME platform installation. + If used, this option overrides the default target directory, + indicated in the configuration XML file (usually + ${HOME}/salome_). -t DIR / --tmp=DIR - The directory, which is used for temporary files. If used, this - option overrides the default temporary directory, given in the - configuration xml file (usually /tmp, see here for more detail). + Defines the directory for temporary files. If used, this + option overrides the default temporary directory, indicated in + the configuration xml file (usually /tmp). + -a / --all-from-sources + + Forces all products to be installed from sources including SALOME + modules. If this option is used all the default installation modes + are ignored. + + -s / --single-directory + + Install all SALOME binaries packages to one directory (SALOME_, + where is SALOME version). + Note: this option is ignored when --all-from-sources (-a) option is used. + -h / --help Prints help information about available options. -v / --version - Prints version information (Note: this is the Installation - Wizard's version number, not of SALOME platform). + Prints version information (Note: this is the version number of + the Installation Wizard, not of the SALOME platform). For more detailed information about the Installation Wizard refer to the readme.html file in the doc directory. @@ -94,7 +102,7 @@ 2.1. Setting of the environment for SALOME Installation Wizard creates some environment files to simplify - the procedure of launching of SALOME. These shell scripts set all + the procedure of launching SALOME. These shell scripts set all necessary environment variables for all products you have installed. These files are: * env_products.csh + env_products.sh in the target directory; @@ -115,25 +123,27 @@ source salome.csh where is KERNEL binaries directory, e.g. - KERNEL_3.0.0 for the 3.0.0 version. + KERNEL_6.5.0 for the 6.5.0 version. 2.2. Launching of SALOME After you set environment you can start SALOME. Go to the KERNEL - module's binaries directory (KERNEL_3.0.0/bin/salome for the version - 3.0.0) by using of 'cd' command and then type: + module's binaries directory (KERNEL_6.5.0/bin/salome for the version + 6.5.0) by using of 'cd' command and then type: runSalome [] This will start SALOME according to the launching parameters which are described in the configuration files: SalomeApp.xml in the - /share/salome/resources folder and .SalomeApprc. - file, located in your home directory (where is number - of SALOME version). If the latest file does not exist, it is automatically - created during the first launch of SALOME. + /share/salome/resources/gui folder and + .SalomeApprc. file, located in your home + directory (where is SALOME version number). + If the user configuration file does not exist, it is automatically + created when exiting SALOME GUI. You can modify SALOME launching options by editing your - ~/.SalomeApprc. file: + ~/.SalomeApprc. file (not all the options are + listed below):
@@ -145,33 +155,89 @@ - +
- Some parameters described in configuration file can be overrided by + Some parameters described in configuration file can be overridden by using of corresponding command-line options for runSalome script: - --gui - Launch GUI desktop - --logger - Use logger server - --xterm - Start each server in its own xterm console window - --portkill - Kill SALOME, running on the current port - --killall - Kill SALOME, running on all ports - --modules=,,..., - Use module(s), possible values are GEOM,SMESH,VISU,MED,SUPERV,etc. - --embedded=,,... - Start specified server/container(s) embedded in SALOME Session server - (i.e. running in the same process), possible values are registry, - study, moduleCatalog, cppContainer, registry - --standalone=,,... - Start standalone server/container(s), possible values are registry, - study, registry, moduleCatalog, cppContainer, pyContainer, supervContainer. + -t, --terminal + Launch without GUI (in the terminal mode). + -g, --gui + Launch in GUI mode [default]. + -d <1/0>, --show-desktop=<1/0> + 1 to activate GUI desktop [default], 0 to not activate + GUI desktop (Session_Server starts, but GUI is not + shown). Ignored in the terminal mode. + -o, --hide-desktop + Do not activate GUI desktop (Session_Server starts, + but GUI is not shown). The same as --show-desktop=0. + -b, --batch + Launch in Batch Mode. (Without GUI on batch machine) + -l, --logger + Redirect messages to the CORBA collector. + -f , --log-file= + Redirect messages to the + -u , --execute= + Python script(s) to be imported. Python scripts are + imported in the order of their appearance. In GUI mode + python scripts are imported in the embedded python + interpreter of current study, otherwise in an external + python interpreter + -r , --resources= + Parse application settings from the instead of + default $(HOME)/.SalomeApprc.$(version) + -x, --xterm + Launch each SALOME server in own xterm console + -m , --modules= + SALOME modules list (where , are + the names of SALOME modules which should be available + in the SALOME session) + -e , --embedded= + CORBA servers to be launched in the Session embedded + mode. Valid values for : registry, study, + moduleCatalog, cppContainer, SalomeAppEngine [by + default the value from the configuration files is + used] + -s , --standalone= + CORBA servers to be launched in the standalone mode + (as separate processes). Valid values for : + registry, study, moduleCatalog, cppContainer, + pyContainer, supervContainer [by default the value + from the configuration files is used] + -p, --portkill + Kill SALOME with the current port + -k, --killall + Kill all running SALOME sessions + -i , --interp= + The number of additional external python interpreters + to run. Each additional python interpreter is run in + separate xterm session with properly set SALOME + environment + -z <1/0>, --splash=<1/0> + 1 to display splash screen [default], 0 to disable + splash screen. This option is ignored in the terminal + mode. It is also ignored if --show-desktop=0 option is + used. + -c <1/0>, --catch-exceptions=<1/0> + 1 (yes,true,on,ok) to enable centralized exception + handling [default], 0 (no,false,off,cancel) to disable + centralized exception handling. + --print-port + Print free port and exit + --nosave-config + Do not save current configuration + ${HOME}/.omniORB_last.cfg + --pinter + Launch with interactive python console. + --ns-port-log= + Print Naming Service Port into a user file. + --gdb-session + Launch session with gdb + --version + Show program's version number and exit Additional launch settings are given in other sections, which refer to certain modules. For example, SMESH plugins which should be used in the SALOME launch @@ -194,34 +260,31 @@ patient. The quickest way to install SALOME is installation from the binaries. In this mode the Installation Wizard just extracts all precompiled - products from the corresponding archives (except those products + products from the corresponding archives (except for the products which can be installed only by compiling from sources). The installation from sources requires much more time than from binaries because in this case the Installation Wizard extracts and then builds each product using the product's own compilation procedure. The installation time also depends on the computer and platform used. - For example, to install SALOME on Pentium IV-2GHz, Linux Mandrake 10.1, + For example, to install SALOME on Pentium IV-3GHz, Linux Mandriva 2010.0, time of the installation is: - - from binaries: ~10 minutes; - - from sources: more than 24 hours. + - from binaries: ~15 minutes; + - from sources: more than 20 hours. - Note, the most time-consuming process is compiling of CASCADE libraries from - sources - it takes about 90% of time needed for compilation of all products. - 3.2. Log files The Installation Wizard displays the installation progress in the corresponding windows (see readme.html). The Wizard uses a temporary directory to store and build the products. During the installation it produces some log files in this directory. If you suspect that - program hangs you can check the log files. These files have names + the program hangs you can check the log files. These files have names in capital letters like CONFIGURE.LOG, MAKE.LOG, MAKEINSTALL.LOG, etc. 3.3. Testing of installed SALOME platform - There is a python script which allows to test shortly all SALOME + There is a python script which allows quickly testing all SALOME modules. This script can help to check if SALOME has been installed successfully. To test SALOME platform, run SALOME desktop (see section 2), then @@ -231,44 +294,67 @@ import salome_test When running, the script loads different modules (Geometry, Mesh, Med, - Post-Pro and Supervisor) and tests different functionality of these - modules. You can watch script running progress in the embedded + Post-Pro) and tests various functionalities of these + modules. You can watch the script execution progress in the embedded python console window. + Note: salome_test.py scripts require SALOME samples module + (SAMPLES_SRC) to be installed (this module includes a set of sample + MED, Python, Supervisor graph, etc files). + Environment variable DATA_DIR should point at the SALOME + samples module directory. + ================================================================================ 4. How to build SALOME modules from sources - This section describes the way how to build SALOME modules manually from - sources distribution provided with Installation Wizard. + This section describes how to build SALOME modules manually + from the sources distribution provided with the Installation Wizard. 4.1. General procedure + SALOME build procedure is based on the GNU auto-tools: + automake, autoconf, libtool, etc. This chapter describes the + steps that should be done in order to compile and install + SALOME modules using GNU aotu-tools. Note, that some modules support also + cmake-based build procedure as alternative, moreover, for + PARAVIS module only cmake-based procedure is + available. Please refer to the paragraph 4.3 for more + details about cmake-based build procedure. + If you want to build SALOME modules from sources, install all prerequisite products, required for the platform and SALOME modules sources. Then follow the scenario described below. In this scenario it is supposed that you have installed SALOME - modules sources in the /home/salome directory. The name of each module + modules sources in the /home/user/salome directory. The name of each module sources directory depends on the version of the platform, for example, - KERNEL_SRC_3.0.0 for KERNEL module of SALOME version 3.0.0. + KERNEL_SRC_6.5.0 for KERNEL module of SALOME version 6.5.0. - The order of compilation and installation should be performed according - to the dependancies between modules: + Compilation and installation should be performed according to + the dependencies between modules: Main SALOME modules: - * KERNEL -> no dependancies + * KERNEL -> no dependencies * GUI -> KERNEL * GEOM -> KERNEL, GUI * MED -> KERNEL, GUI * SMESH -> KERNEL, GUI, GEOM, MED * VISU -> KERNEL, GUI, MED - * SUPERV -> KERNEL, GUI + * YACS -> KERNEL, GUI + * PARAVIS -> KERNEL, GUI, MED, VISU + * HEXABLOCK -> KERNEL, GUI, GEOM + * HOMARD -> KERNEL, GUI, MED, SMESH + * JOBMANAGER -> KERNEL, GUI SMESH plugins: - * NETGENPLUGIN -> KERNEL, GUI, SMESH - * GHS3DPLUGIN -> KERNEL, GUI, SMESH + * NETGENPLUGIN -> KERNEL, GUI, MED, GEOM, SMESH + * GHS3DPLUGIN -> KERNEL, GUI, MED, GEOM, SMESH + * GHS3DPRLPLUGIN -> KERNEL, GUI, MED, GEOM, SMESH + * BLSURFPLUGIN -> KERNEL, GUI, MED, GEOM, SMESH + * HexoticPLUGIN -> KERNEL, GUI, MED, GEOM, SMESH, BLSURFPLUGIN + * HEXABLOCKPLUGIN -> KERNEL, GUI, MED, GEOM, SMESH, HEXABLOCK Sample modules: @@ -276,30 +362,43 @@ * PYCALCULATOR -> KERNEL, MED * CALCULATOR -> KERNEL, MED * HELLO -> KERNEL, GUI - * PYHELLO -> KERNEL + * PYHELLO -> KERNEL, GUI * LIGHT -> KERNEL, GUI + * PYLIGHT -> KERNEL, GUI + * RANDOMIZER -> KERNEL, GUI + * SIERPINSKY -> KERNEL, GUI, MED, VISU, RANDOMIZER + * ATOMIC -> KERNEL, GUI + * ATOMGEN -> KERNEL, GUI + * ATOMSOLV -> KERNEL, GUI, ATOMGEN Note: SMESH plugins and sample modules are optional. You may skip compiling them if you do not plan to use NETGEN and/or GHS3D meshing algorithms and do not want to build samples. - In general, each module (except KERNEL and GUI, of course) is optional for - SALOME. If you do not need any module, just do not compile or install - it. But remember that some modules require other ones to be built first - (see dependancies table above). + Note: Meshing plug-ins BLSURFPLUGIN, HexoticPLUGIN, GHS3DPLUGIN and + GHS3DPRLPLUGIN require commercial license for the Distene + meshers in runtime mode. Moreover, BLSURFPLUGIN requires + blsurf product at the compilation time. Without it, the + BLSURFPLUGIN meshing plugin compilation will fail. Refer + to http://www.distene.com/ for more details. + + In general, each module (except for KERNEL and GUI) is + optional for SALOME. If you do not need a certain module, just do not + compile or install it. But remember that some modules require others + to be built first (see dependencies table above). To build KERNEL module: - - go to installation root directory (/home/salome in this example): + - go to installation root directory (/home/user/salome in this example): - cd /home/salome + cd /home/user/salome - to set environment variables use bash or csh script, depending on your shell: - source ../env_products.csh + source ./env_products.csh or - source ../env_products.sh + source ./env_products.sh - create build directory for the KERNEL module: @@ -308,108 +407,172 @@ - create a configuration script by typing - ../KERNEL_SRC_3.0.0/build_configure + ../KERNEL_SRC_6.5.0/build_configure - run configure script which will check the environment and create Makefile files: - ../KERNEL_SRC_3.0.0/configure --prefix=/home/salome/KERNEL_install + ../KERNEL_SRC_6.5.0/configure --prefix=/home/user/salome/KERNEL-6.5.0 Note, that --prefix option defines the directory where you want to install KERNEL module after 'make install' procedure. configure script - accepts also a lot of other parameters (for example, to build the module - in the optimized mode use --disable-debug --enable-production keys). - More about certain module's configure options you can learn by using - --help (-h) parameter. + also accepts a lot of other parameters (for example, to build the module + in the Release mode use --disable-debug --enable-production keys). + You can learn more about the configure of any modules by using --help (-h) + parameter. - - build and (optionally) install KERNEL module: + - build and install KERNEL module: make make install After you have completed this scenario, KERNEL module is built and - installed into /home/salome/KERNEL_install directory. + installed into /home/user/salome/KERNEL-6.5.0 directory. - modify your environment scripts: * for bash: - export KERNEL_ROOT_DIR=/home/salome/KERNEL_install - or - export KERNEL_ROOT_DIR=/home/salome/KERNEL_build - (if make install step was not performed). + export KERNEL_ROOT_DIR=/home/user/salome/KERNEL-6.5.0 * for csh: - setenv KERNEL_ROOT_DIR /home/salome/KERNEL_install - or - setenv KERNEL_ROOT_DIR /home/salome/KERNEL_build - (if make install step was not performed). + setenv KERNEL_ROOT_DIR /home/user/salome/KERNEL-6.5.0 - then repeat this scenario for other modules you want to build taking - into account the dependancies between modules (see dependancies table + into account the dependencies between modules (see dependencies table above). Note: if the compilation fails it may be caused by bad environment. - In this case you should check that environment script you use + In this case you should check if the environment script that you use (salome.csh or salome.sh) contains the following lines for each module MODULE: * for bash: - export MODULE_ROOT_DIR=/home/salome/ + export MODULE_ROOT_DIR=/home/user/salome/ * for csh: - setenv MODULE_ROOT_DIR /home/salome/ + setenv MODULE_ROOT_DIR /home/user/salome/ - where is a MODULE_build or MODULE_install (see above). + where is a MODULE-6.5.0 (see above). - 4.2. Automatic build procedure: build.csh script + 4.2. Automatic build procedure: build.csh and build.sh scripts - From version 2.2.0 SALOME Installation Wizard includes the script + SALOME Installation Wizard includes two scripts which can be used for automatic building of SALOME modules from sources packages: - build.csh. It is installed into the top-level target directory - (the same directory where env_products.[c]sh files are generated. + build.csh and build.sh. The scripts are installed into the top-level + installation directory (the same directory where env_products.[c]sh + files are generated). + + The build.csh and buils.sh scripts implement the same functionality + and support the same set of options, but for different shells. + Use build.csh script for csh and build.sh for bash. + The description below refers to both scripts. - To use this script just install SALOME sources packages with + To use the script just install SALOME sources packages with the Installation Wizard, then cd to the SALOME installation directory and type: ./build.csh - By default, build.csh only compiles the modules but does not install them, - i.e. does not perform 'make install' step. - To do this, use -i option or -p where is target - directory. + By default, build.csh builds and installs all SALOME + modules. All modules are installed to the INSTALL subfolder + of the current directory. If you need to change the installation + directory, you can use -p option where is the + directory SALOME modules should be installed to. - If you want to build only some SALOME modules, just pass them as - parameters, e.g.: + If you want to build only some subset of SALOME modules, + just pass them as parameters, e.g.: - ./build.csh -i KERNEL MED GEOM + ./build.csh -p /home/user/salome KERNEL MED GEOM - The script also provides some other options which specify compiling - and installation parameters. You can learn about options by using + The script also provides other options which specify compiling and + installation parameters. You can learn about these options by using -h key: ./build.csh -h - When you run build.csh at first time it is not necessary to pass - -b, -c parameters. The script detects if build procedure has not yet - been performed and runs build_configure, configure scripts - in this case automatically. + When you run build.csh for the first time it is not necessary to pass + -b or -c parameters. The script detects if build procedure has not yet + been performed and in this case runs build_configure, configure scripts + automatically. - Note: for avoiding of collisions it is recommended not to install + Note: to avoid collisions it is recommended not to install SALOME binaries packages with Installation Wizard if you plan to build SALOME modules from sources packages or to edit/comment all rows in env_products.csh file concerning binaries packages. Note: use -d option carefully because in this case the script removes - existing (previously installed) SALOME modules. + the existing (previously installed) SALOME modules. + + Note: build.(c)sh scripts do not modify the environment files + (env_products.csh, etc). You should do it by yourself. + + 4.3. Build SALOME using cmake + + Some (but not all) SALOME modules can be built using + cmake. If you want to learn what modules can be built with + cmake, just check the root source directory and look for + CMakeLists.txt file or build_cmake script. + + This paragraph describes the steps that should be done in + order to build SALOME modules using cmake. + + For example, to build KERNEL module: + + - go to installation root directory (/home/user/salome in this example): + + cd /home/user/salome + + - to set environment variables use bash or csh script, depending on + your shell: + + source ./env_products.csh + or + source ./env_products.sh + + - generate CMakeLists.txt files: + + cd KERNEL_SRC_6.5.0 + ./build_cmake + cd .. + + Note, that this step is not required for PARAVIS module, + since it is already supplied with the CMakeLists.txt + files. For other modules, build_cmake script generates + CMakeLists.txt files from the Makefile.am files. + + - create build directory for the KERNEL module: + + mkdir KERNEL_build + cd KERNEL_build + + - run cmake + + cmake -DCMAKE_INSTALL_PREFIX=/home/user/salome/KERNEL-6.5.0 ../KERNEL_SRC_6.5.0 + + Note, that -DCMAKE_INSTALL_PREFIX option defines the directory where you want to + install KERNEL module after 'make install' procedure. You + can supply additional options to the cmake (for example, to + build the module in the Release mode use -DCMAKE_BUILD_TYPE=Release option). + + - build and install KERNEL module: + + make + make install + + After you have completed this scenario, KERNEL module is built and + installed into /home/user/salome/KERNEL-6.5.0 directory. + + - modify your environment scripts: + + * for bash: + + export KERNEL_ROOT_DIR=/home/user/salome/KERNEL-6.5.0 + + * for csh: - Note: please, take into account 'make install' step is - obligatory for the KERNEL module. Build directory of KERNEL - can not be pointed as KERNEL_ROOT_DIR. This is an exception - for the SALOME modules. So you should use one of options -i - or -p of build.sch script when building KERNEL module. + setenv KERNEL_ROOT_DIR /home/user/salome/KERNEL-6.5.0 ================================================================================