====== Requirements ======
To compile Auryn you need the [[http://www.boost.org|boost libraries]] installed (if you do not want to install the complete library you will at least need the following components boost_program_options, boost_mpi, boost_serialization, boost_filesystem, boost_system), a recent version of an MPI compatible library such as MPICH2 or OpenMPI.
Under most debian deriviatives such as Debian, Ubuntu or MINT it should suffice to install
sudo apt-get install build-essential libboost-all-dev mpi-default-bin mpi-default-dev
===== Building Boost libraries with MPI from source =====
It might happen that your distribution's Boost version is too old. To install Boost from scratch, first install any versions of the Boost libraries installed on your computer using your stock package manager.
Then download and build boost from source (with MPI support). To that end, follow the instructions found in the MPI section of the boost website http://www.boost.org/doc/libs/1_61_0/doc/html/mpi/getting_started.html
Before you [[compileauryn|build Auryn]] make sure to delete the ''CMakeCache.txt'' file and all other ''CMakeFiles'' in the build directory to ensure that CMake looks for the new library and creates the needed Makefiles.
==== Troubleshooting common problems ====
If you can compile your Auryn programs, but you see an error along these lines
./sim_rc_p10c: error while loading shared libraries: libboost_mpi.so.1.61.0: cannot open shared object file: No such file or directory
it's probably because you have installed Boost under the default path ''/usr/local/lib'', but your environment is only looking in ''/usr/lib'' for dynamically linkable libraries. In this case it is usually enough to update your ''LD_LIBRARY_PATH'' environment variable.
You could for instance add the following to your ''.bashrc'' if you are using bash:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
See also [[known issues]]