In order to build iPST you need:
- JDK (1.8 or greater)
- Maven
- CMake (2.6 or greater)
- Recent C++ compiler (GNU g++ or Clang)
- powsybl-core
Optional C++ modules requires:
- Intel Fortran Compiler
- Matlab
- Dymola
- Eurostag
To compile Eurostag dependant modules, you have to set your INTEL_HOME environment variable to the root of the Intel Fortran Compiler installation.
To easily compile iPST, you can use the toolchain:
$> git clone https://github.com/itesla/ipst.git
$> ./install.sh
By default, the toolchain will:
- download and compile all external packages from the Internet
- compile C++ and Java modules
- install iPST
Target | Description |
---|---|
clean | Clean iPST modules |
clean-thirdparty | Clean the thirdparty libraries |
compile | Compile iPST modules |
package | Compile iPST modules and create a distributable package |
install | Compile iPST modules and install it |
docs | Generate the documentation (Doxygen/Javadoc) |
help | Display this help |
The toolchain options are saved in the install.cfg configuration file. This configuration file is loaded and updated each time you use the toolchain.
Option | Description | Default value |
---|---|---|
--help | Display this help | |
--prefix | Set the installation directory | $HOME/itesla |
--package-type | Set the package format. The supported formats are zip, tar, tar.gz and tar.bz2 | zip |
Option | Description | Default value |
---|---|---|
--with-dymola | Enable the compilation of Dymola dependant modules | $DYMOLA_HOME |
--without-dymola | Disable the compilation of Dymola dependant modules | |
--with-eurostag | Enable the compilation of Eurostag dependant modules | $EUROSTAG_SDK_HOME |
--without-eurostag | Disable the compilation of Eurostag dependant modules | |
--with-matlab | Enable the compilation of Matlab dependant modules | $MATLAB_HOME |
--without-matlab | Disable the compilation of Matlab dependant modules |
Option | Description | Default value |
---|---|---|
--with-thirdparty | Enable the compilation of thirdparty libraries | |
--without-thirdparty | Disable the compilation of thirdparty libraries | |
--thirdparty-prefix | Set the thirdparty installation directory | $HOME/itesla_thirdparty |
--thirdparty-download | Sets false to compile thirdparty libraries from a local repository | true |
--thirdparty-packs | Sets the thirdparty libraries local repository | $HOME/itesla_packs |
ipst_prefix=$HOME/itesla
ipst_package_type=zip
# -- iPST C++ modules options --
eurostag_build=false
eurostag_home=$EUROSTAG_SDK_HOME
dymola_build=false
dymola_home=$DYMOLA_HOME
matlab_build=false
matlab_home=$MATLAB_HOME
# -- iPST thirdparty libraries --
thirdparty_build=true
thirdparty_prefix=$HOME/itesla_thirdparty
thirdparty_download=true
thirdparty_packs=$HOME/itesla_packs