Installation¶
Requirements¶
You need to have the following software properly installed in order to build SeismicMesh:
- Python >= 3.0
Note
The file setup.cfg
in the main directory indicates all the Python dependencies and their respective version numbers (if necessary). These packages should be installed at compile time by setuptools
Note
On some Linux systems, users may have to resort to apt install python3-segyio to installing segyio on their systems.
pybind11 >= 2.6
C++ compiler (GNU or Intel) with support for std++14 or newer.
cmake >= 3.0
CGAL >= 5.0.0 which requires:
- MPFR
- GMP
- Boost > 1.4.8
Note
CGAL requires Boost, MPFR and GMP. These packages may already be installed on your standard Linux box.
Warning
Make sure your package manager is downloading CGAL >= 5.0 otherwise you will not be able to install SeismicMesh!
Compilation by source¶
After installing all dependencies, perform
$ pip install -e .
Note
If you do not have administrative rights on your system, add the flag --user
to the command above.
Warning
With this said, the preferred method of installation using pypi: pip install SeismicMesh
Testing¶
Testing is accomplished with tox. The tox package can be installed like so:
pip install tox
To test the installation, serial and parallel capabilities, you can use tox from the top directory of the package:
$ tox
Installation on Clusters¶
Note
Make sure the CXX environment variable points to your intended compiler!
If installing on a cluster by source with a local installation of CGAL
and Boost
, you’ll need to edit setup.cfg
with the CMake arguments so to point the installation to the correct directories. Namely, in setup.py
you’ll have to edit the list called cmake_args
to include
-DCMAKE_CXX_COMPILER=+/PATH/TO/CPPCOMPILER
-DBoost_INCLUDE_DIR=+/PATH/TO/BOOST/
-DMPFR_LIBRARIES=+/PATH/TO/libmpfr.a
-DMPFR_INCLUDE_DIR=+/PATH/TO/MPFR/include