Changes
Page history
Created 0402 Compilation INMOST Linux (markdown)
authored
Jan 19, 2015
by
Alexander Danilov
Show whitespace changes
Inline
Side-by-side
0402-Compilation-INMOST-Linux.md
0 → 100644
View page @
2ec4ddc1
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/master.tar.gz"
tar zxf master.tar.gz
rm -f master.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-master
```
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-master
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-master
make
```
Optionally we can compile included examples (
`COMPILE_EXAMPLES=ON`
) and tests (
`COMPILE_TESTS=ON`
):
```
cmake -DCOMPILE_EXAMPLES=ON -DCOMPILE_TESTS=ON ../INMOST-master
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-master
```
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-master/
```
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-master
```