Skip to content

Build instructions

R. Quast edited this page Jun 17, 2024 · 105 revisions

Prerequisites

Building the Especia software requires CMake and a compiler that implements the ISO/IEC 14882:2011 norm, also known as C++11. If not installed already and not available within your system's package manager, you may use Homebrew for obtaining the required developer tools. In addition, Especia uses the Linear Algebra Package, which may already be included with your system's framework (as in macOS) or with your high performance numerical library (like Intel's Math Kernel Library or ATLAS). CMake will detect it automatically. Invoke your system's package manager (or Homebrew) to install the Linear Algebra Package, if CMake did not detect it.

Many compilers support OpenMP directives or C++-11 for parallel programming. Especia will exploit multiple processor cores automatically. The software is tested on various variants of macOS (including Big Sur on Intel and M1 machines) and Linux.

Building and installing

To build and test the Especia software cd into the project root directory and type:

mkdir cmake-build-release
cd cmake-build-release
cmake -DCMAKE_BUILD_TYPE=Release ..
make all test

The lines printed to the console eventually read like:

Running tests...
Test project ~/Developer/github/especia/cmake-build-release
    Start 1: decompose_test
1/5 Test #1: decompose_test ...................   Passed    0.00 sec
    Start 2: integrator_test
2/5 Test #2: integrator_test ..................   Passed    0.00 sec
    Start 3: optimizer_test
3/5 Test #3: optimizer_test ...................   Passed    0.74 sec
    Start 4: profiles_test
4/5 Test #4: profiles_test ....................   Passed    0.00 sec
    Start 5: random_test
5/5 Test #5: random_test ......................   Passed    0.00 sec

100% tests passed, 0 tests failed out of 5

Label Time Summary:
unit    =   0.75 sec*proc (5 tests)

Total Test time (real) =   0.76 sec

To complete the build and install process type make install. All executable files will be copied to your $HOME/bin directory by default. You may install them, however, to any other location by setting the CMAKE_INSTALL_PREFIX accordingly:

mkdir cmake-build-release
cd cmake-build-release
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=any/other/location ..
make install

To uninstall Especia type:

make uninstall

Developers using macOS might want to create an Xcode project. To create the Xcode project cd into the Especia root directory and type:

mkdir xcode-build
cd xcode-build
cmake -G Xcode ..

The Xcode project will be named especia.xcodeproj.

Clone this wiki locally