Python package to install BOUT++ and its dependencies
Project description
bout_install
Python package to install BOUT++ and its dependencies.
NOTE: This package is meant as a "last resort" to install BOUT++, for example when you are not a
root
user, and you are trying to install on a "tricky" system. Otherwise BOUT++ can easily be installed using docker or installed as explained in the BOUT ++ documentation .
Getting Started
bout_install
is a lightweight package, and requires only python3
,
requests
and an internet connection to run.
Building BOUT++
and dependencies can be done by executing
from bout_install import install_bout
install_bout(config_path=None, add_to_bashrc=False)
or from command-line
bout_install --help
which returns
usage: bout_install [-h] [-c CONFIG] [-a]
Install BOUT++ with dependencies
optional arguments:
-h, --help show this help message and exit
-c CONFIG, --config CONFIG
Path to the configuration file. Default is
/path/to/bout_install/bout_install/config.ini
-a, --add_to_bashrc If set, paths to binaries and libraries of
dependencies will be added to .bashrc. Default is
false
This will build BOUT++ and its dependencies according to the content of
config.ini
:
[bout_options]
# Let these be empty for default behavior
# Read docstring of InstallerUsingGit.InstallerUsingGit.__init__ for details
# NOTE: Commit 8567b2d5bb5f4b70face0b8d0849fc1bbafbbdb0 is known to work
git_dir =
checkout =
enable_checks = no
enable_optimize = 3
[install_options]
# If packages not residing in local should be used
use_preinstalled = false
# Let these be empty for default behavior
# Read docstring of Installer.Installer.setup_install_dirs for details
main_dir =
install_dir =
local_dir =
examples_dir =
[required]
fftw = true
hdf5 = true
mpi = true
netcdf = true
[optional]
cmake = false
ffmpeg = false
gcc = false
slepc = true
sundials = true
# NOTE: PETSc is installed if slepc is true
petsc = false
[versions]
cmake = 3.7.2
ffmpeg = 3.1.4
fftw = 3.3.6-pl2
gcc = 6.1.0
hdf5 = 1.10.1
mpi = 3.2
nasm = 2.13.03
netcdf = 4.4.1.1
netcdf_cxx = 4.3.0
# NOTE: Only certain PETSc versions are supported by BOUT++
petsc = 3.10.0
# NOTE: Sundials 2.7.0 have given openmp problems
sundials = 2.6.2
# NOTE: Must correspond to the PETSc version
slepc = 3.10.0
yasm = 1.3.0
x264 = x264-snapshot-20180709-2245-stable
Installing from pip
The package can be installed from pip
:
pip install bout-install
Installing from source
Alternatively it can be installed from source
python setup.py install
Running the tests
The test suite can be executed through pytest
or through codecov pytest-cov
.
Installation through
pip install pytest
or
pip install codecov pytest-cov
and run with
pytest
or
pytest --cov=./
respectively
NOTE: Due to time constraints of automatic testing with Travis, the unittests have been "blinded" by adding a "." in front of the name. In this way
pytest
will ignore those test. "Un-blind" them by removing the leading " ." in order to run them.
License
This project is licensed under the GNU Lesser General Public License - see the LICENSE file for details
Acknowledgments
- The BOUT++ team for fast and accurate response on the issue tracker and slack-channel
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file bout_install-0.1.9.tar.gz
.
File metadata
- Download URL: bout_install-0.1.9.tar.gz
- Upload date:
- Size: 23.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.4.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 443c9363ce49b336615ee98c99f26c5aec449733492fe73e4c302da4e9178185 |
|
MD5 | 6cb4f4f6368ade92fa3f12382bfa6cab |
|
BLAKE2b-256 | 3988168d359c190ec8a292a9fe9bc9cd25fcf827764076a935556381bcd34d32 |
File details
Details for the file bout_install-0.1.9-py3-none-any.whl
.
File metadata
- Download URL: bout_install-0.1.9-py3-none-any.whl
- Upload date:
- Size: 34.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.4.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 548b85e960f456ee299864ce0e8d2a5c2ff0aaba02f5ffa91875d3a271a53491 |
|
MD5 | 60ad2d5fc4ad0b9c7fd9764641b3b7fc |
|
BLAKE2b-256 | ae37fa09330354ff3e8a4e1c8c5fe9fe1d45f5012122084d213850af80cc18a1 |