A simple Python tool to install libraries with commonly used compiler- and MPI combinations
Go to file
Patrick Lipka 04443e5159 Added general section tom README 2022-09-29 19:44:06 +02:00
config Adjusted versions to match bm2 installation 2022-09-29 16:56:46 +02:00
lib Sort libraries to be installed only after dependencies that are actually present 2022-09-29 19:27:42 +02:00
.gitignore v0.3 - split up script to modules, started to adapt style to PEP8 2022-09-22 01:17:05 +02:00
LICENSE Initial commit 2022-09-18 20:45:42 +02:00
README.md Added general section tom README 2022-09-29 19:44:06 +02:00
libinstaller v0.7 - intel mpi options corrected, added support for building all libraries at once 2022-09-28 15:40:49 +02:00

README.md

libinstaller

This Python tool has been developed to automate the installation of libraries frequently used by HPC applications.

Basic Usage

To install the library <lib> using compiler <compiler> and MPI <mpi> make sure to have a configuration file <lib>.json in the config directory and invoke the tool as follows:

./libinstaller --compiler=<compiler> --mpi=<mpi> --<lib>

To install all libraries with build recipes in config:

./libinstaller --compiler=<compiler> --mpi=<mpi> --<lib>

For further options and their default values, please have a look at ./libinstaller -h:

usage: libinstaller [-h] [--config CONFIG] [--prefix PREFIX] [--src SRC] [--work WORK] [--keep-work] [--compiler COMPILER] [--mpi MPI] [--threads THREADS]
                    [--verbose] [--separate-lib64] [--disable-shared] [--all]

options:
  -h, --help           show this help message and exit
  --config CONFIG      Path to config directory [$pwd/config]
  --prefix PREFIX      Path where install directory should be generated [$pwd]
  --src SRC            Path where to download source code to [$pwd/src]
  --work WORK          Path to working directory for builds [$pwd/work]
  --keep-work          Disable removal of work directory after successful builds
  --compiler COMPILER  Select compiler (gnu, intel, aocc) [gnu]
  --mpi MPI            Select compiler (hpcx, intelmpi, openmpi) [hpcx]
  --threads THREADS    Number of threads used for make [8]
  --verbose            Print build output to screen instead piping it to logfile
  --separate-lib64     Do not create symbolic links of files from lib64 in lib
  --disable-shared     Disable building of shared libraries
  --all                Install all libraries with config file in config/