2 .. include:: ../../rst_prolog.rst
9 The **compile** command allows compiling the products of a SALOME_ application.
14 * Compile a complete application: ::
16 sat compile <application>
18 * Compile only some products: ::
20 sat compile <application> --products <product1>,<product2> ...
22 * Use *sat -t* to duplicate the logs in the terminal (by default the log are stored and displayed with *sat log* command): ::
24 sat -t compile <application> --products <product1>
26 * Compile a module and its dependencies: ::
28 sat compile <application> --products med --with_fathers
30 * Compile a module and the modules depending on it (for example plugins): ::
32 sat compile <application> --products med --with_children
34 * Clean the build and install directories before starting compilation: ::
36 sat compile <application> --products GEOM --clean_all
38 .. note:: | a warning will be shown if option *--products* is missing
39 | (as it will clean everything)
41 * Clean only the install directories before starting compilation: ::
43 sat compile <application> --clean_install
45 * Add options for make: ::
47 sat compile <application> --products <product> --make_flags <flags>
49 * Use the *--check* option to execute the unit tests after compilation: ::
51 sat compile <application> --check
53 * Remove the build directory after successful compilation (some build directory like qt are big): ::
55 sat compile <application> --products qt --clean_build_after
57 * Stop the compilation as soon as the compilation of a module fails: ::
59 sat compile <product> --stop_first_fail
61 * Do not compile, just show if products are installed or not, and where is the installation: ::
63 sat compile <application> --show
65 * Print the recursive list of dependencies of one (ore several) products: ::
67 sat -v5 compile SALOME-master -p GEOM --with_fathers --show
70 Some useful configuration pathes
71 =================================
73 The way to compile a product is defined in the *pyconf file configuration*.
76 * **build_source** : the method used to build the product (cmake/autotools/script)
77 * **compil_script** : the compilation script if build_source is equal to "script"
78 * **cmake_options** : additional options for cmake.
79 * **nb_proc** : number of jobs to use with make for this product.
80 * **check_install** : allow to specify a list of path (relative to install directory), that sat will check after installation. This flag allow to check an installation is complete.