Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • I INMOST
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Kirill Terekhov
  • INMOST
  • Wiki
  • 0402 Compilation INMOST Linux

Last edited by Kirill Terekhov Sep 21, 2015
Page history

0402 Compilation INMOST Linux

Compiling basic version of INMOST on Linux

We advise to define the folder where you want to place INMOST and other optional libraries:

export INMOST_ROOT="/home/user/inmost-root"

If it doesn't already exist, create this directory:

mkdir -p "$INMOST_ROOT"

Download and unpack INMOST archive:

cd "$INMOST_ROOT"
wget "https://github.com/INMOST-DEV/INMOST/archive/v0.1.tar.gz"
tar zxf v0.1.tar.gz

alternatively you can git clone INMOST repository. Make sure you installed git.

cd "$INMOST_ROOT"
git clone https://github.com/INMOST-DEV/INMOST.git INMOST-0.1

We will create separate directory for INMOST compilation, and configure INMOST with minimal features enabled:

cd "$INMOST_ROOT"
mkdir -p INMOST-build
cd INMOST-build
cmake -DUSE_AUTODIFF=OFF -DUSE_MPI=OFF ../INMOST-0.1
make all

After successful compilation the INMOST library will be created in the current directory.

You can switch between Debug and Release build types using CMake option CMAKE_BUILD_TYPE:

cmake -DCMAKE_BUILD_TYPE=Release ../INMOST-0.1
make all

Optionally we can compile included examples (COMPILE_EXAMPLES=ON) and tests (COMPILE_TESTS=ON):

cmake -DCOMPILE_EXAMPLES=ON -DCOMPILE_TESTS=ON ../INMOST-0.1
make all
make test

Adding MPI support

MPI support is already enabled by default and CMake will auto-detect your MPI installation. Enable USE_MPI option if you previously disabled it.

cmake -DUSE_MPI=ON ../INMOST-0.1
make all

If you need to provide specific paths to MPI wrappers, you can do this using MPI_<lang>_COMPILER options, e.g.:

cmake -DUSE_MPI=ON -DMPI_C_COMPILER=/usr/local/bin/mpicc -DMPI_CXX_COMPILER=/usr/local/bin/mpicxx ../INMOST-0.1/
make all

If your MPI implementation does not support MPI-IO, you should explicitly disable USE_MPI_FILE option:

cmake -DUSE_MPI=ON -DUSE_MPI_FILE=OFF ../INMOST-0.1
make all

Changing default compilers

If you want to use different compilers, you should provide them using CMake parameters CMAKE_C_COMPILER and CMAKE_CXX_COMPILER:

cmake -DCMAKE_C_COMPILER=icc -DCMAKE_CXX_COMPILER=icpc ../INMOST-0.1/
make all
Clone repository
  • 0100 Compilation
  • 0200 Compilation Windows
  • 0201 Obtain MSVC
  • 0202 Obtain MSMPI
  • 0203 Compilation INMOST Windows
  • 0204 Compilation ParMETIS Windows
  • 0205 Compilation Zoltan Windows
  • 0206 Compilation PETSc Windows
  • 0207 Compilation Trilinos Windows
  • 0400 Compilation Linux
  • 0401 Install MPI
  • 0402 Compilation INMOST Linux
  • 0403 Compilation PETSc Linux
  • 0404 Compilation Trilinos Linux
  • 0405 Compilation ParMETIS Linux
View All Pages