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
================================================================================
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.
- For example, for the Linux Mandriva 2006.0 the config_Mandriva_2006.0.xml
+ For example, for the Linux Mandriva 2010.0 the config_Mandriva_2010.0.xml
file will be used by default.
-d DIR / --target=DIR
source salome.csh
where <KERNEL_ROOT_DIR> is KERNEL binaries directory, e.g.
- KERNEL_6.4.0 for the 6.4.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_6.4.0/bin/salome for the version
- 6.4.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 [<parameters>]
<parameter name="xterm" value="no"/>
<parameter name="portkill" value="no"/>
<parameter name="killall" value="no"/>
- <parameter name="modules" value="GEOM,SMESH,VISU,MED,YACS"/>
+ <parameter name="modules" value="GEOM,SMESH,VISU,MED,YACS,PARAVIS"/>
<parameter name="embedded" value="SalomeAppEngine"/>
<parameter name="standalone" value="study,pyContainer,cppContainer,registry,moduleCatalog"/>
</section>
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-3GHz, Linux Mandriva 2006.0,
+ For example, to install SALOME on Pentium IV-3GHz, Linux Mandriva 2010.0,
time of the installation is:
- from binaries: ~15 minutes;
- - from sources: more than 24 hours.
+ - from sources: more than 20 hours.
3.2. Log files
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/user/salome directory. The name of each module
sources directory depends on the version of the platform, for example,
- KERNEL_SRC_6.4.0 for KERNEL module of SALOME version 6.4.0.
+ KERNEL_SRC_6.5.0 for KERNEL module of SALOME version 6.5.0.
Compilation and installation should be performed according to
the dependencies between modules:
* SMESH -> KERNEL, GUI, GEOM, MED
* VISU -> KERNEL, GUI, MED
* 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, MED, GEOM, SMESH
* GHS3DPLUGIN -> KERNEL, GUI, MED, GEOM, SMESH
* GHS3DPRLPLUGIN -> KERNEL, GUI, MED, GEOM, SMESH
- * HexoticPLUGIN -> 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:
* 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.
- Note: Meshing plug-ins BLSURFPLUGIN, HexoticPLUGIN and
+ 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, of course) is
+ 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 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:
- create a configuration script by typing
- ../KERNEL_SRC_6.4.0/build_configure
+ ../KERNEL_SRC_6.5.0/build_configure
- run configure script which will check the environment and create
Makefile files:
- ../KERNEL_SRC_6.4.0/configure --prefix=/home/user/salome/KERNEL-6.4.0
+ ../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
also accepts a lot of other parameters (for example, to build the module
- in the optimized mode use --disable-debug --enable-production keys).
+ 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.
make install
After you have completed this scenario, KERNEL module is built and
- installed into /home/user/salome/KERNEL-6.4.0 directory.
+ 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.4.0
+ export KERNEL_ROOT_DIR=/home/user/salome/KERNEL-6.5.0
* for csh:
- setenv KERNEL_ROOT_DIR /home/user/salome/KERNEL-6.4.0
+ 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 dependencies between modules (see dependencies table
setenv MODULE_ROOT_DIR /home/user/salome/<MODULE_distribution>
- where <MODULE_distribution> is a MODULE-6.4.0 (see above).
+ where <MODULE_distribution> is a MODULE-6.5.0 (see above).
4.2. Automatic build procedure: build.csh and build.sh scripts
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:
+
+ setenv KERNEL_ROOT_DIR /home/user/salome/KERNEL-6.5.0
+
================================================================================