1
0
mirror of https://github.com/TREX-CoE/trexio.git synced 2024-12-22 04:14:40 +01:00

[wheel build] Release 2.5.0 + updated README

This commit is contained in:
q-posev 2024-09-11 09:47:14 +02:00
parent d0044bf7a0
commit 908842122e
No known key found for this signature in database
GPG Key ID: 45235B39F0399606
2 changed files with 29 additions and 31 deletions

View File

@ -15,8 +15,7 @@ which enables fast read and write operations. It is compatible with a variety
of platforms and has interfaces for the Fortran, Python, OCaml and Rust of platforms and has interfaces for the Fortran, Python, OCaml and Rust
programming languages. programming languages.
* [TREXIO](#trexio) * [Installation](#installation)
* [Installation](#installation)
* [Installation using a package manager](#installation-using-a-package-manager) * [Installation using a package manager](#installation-using-a-package-manager)
* [Conda](#conda) * [Conda](#conda)
* [Spack](#spack) * [Spack](#spack)
@ -28,17 +27,17 @@ programming languages.
* [Compilation without the HDF5 library](#compilation-without-the-hdf5-library) * [Compilation without the HDF5 library](#compilation-without-the-hdf5-library)
* [For TREXIO developers: from the GitHub repo clone](#for-trexio-developers-from-the-github-repo-clone) * [For TREXIO developers: from the GitHub repo clone](#for-trexio-developers-from-the-github-repo-clone)
* [Using CMake instead of Autotools](#using-cmake-instead-of-autotools) * [Using CMake instead of Autotools](#using-cmake-instead-of-autotools)
* [Using TREXIO](#using-trexio) * [Using TREXIO](#using-trexio)
* [Naming convention](#naming-convention) * [Naming convention](#naming-convention)
* [Tutorial](#tutorial) * [Tutorial](#tutorial)
* [Documentation](#documentation) * [Documentation](#documentation)
* [Linking to your program](#linking-to-your-program) * [Linking to your program](#linking-to-your-program)
* [Distributing TREXIO with your code](#distributing-trexio-with-your-code) * [Distributing TREXIO with your code](#distributing-trexio-with-your-code)
* [APIs for other languages](#apis-for-other-languages) * [APIs for other languages](#apis-for-other-languages)
* [Python](#python) * [Python](#python)
* [Rust](#rust) * [Rust](#rust)
* [OCaml](#ocaml) * [OCaml](#ocaml)
* [Citation](#citation) * [Citation](#citation)
* [Miscellaneous](#miscellaneous) * [Miscellaneous](#miscellaneous)

View File

@ -11,7 +11,7 @@ can be used to convert data from one input/output file format into another.
## Requirements ## Requirements
- python3 (>= 3.6) - python3 (>= 3.8)
- numpy (>= 1.17.3) - numpy (>= 1.17.3)
## Installation from PyPI ## Installation from PyPI
@ -27,10 +27,6 @@ However, it is good practice to first check for updates of the build-system pack
**Note: we highly recommend to use virtual environments to avoid compatibility issues and to improve reproducibility.** **Note: we highly recommend to use virtual environments to avoid compatibility issues and to improve reproducibility.**
For more details, see the corresponding part of the [Python documentation](https://docs.python.org/3/library/venv.html#creating-virtual-environments). For more details, see the corresponding part of the [Python documentation](https://docs.python.org/3/library/venv.html#creating-virtual-environments).
**Note: our build farm (GitHub Actions) does not support ARM64 architectures (including the Mac M1/M2 chips). Therefore, `pip install trexio` does not work on an ARM64-based machine. Thus, we recommend to install TREXIO from source on an ARM64-based machine. If one uses a Mac where HDF5 is installed with brew (i.e., `brew install hdf5`), a workaround is to execute the following 2 lines before doing `pip install trexio`:**
- `export H5_CFLAGS="-I$(brew --prefix hdf5)/include"`
- `export H5_LDFLAGS="-L$(brew --prefix hdf5)/lib"`
## Additional requirements (for installation from source) ## Additional requirements (for installation from source)
@ -50,6 +46,9 @@ For more details, see the corresponding part of the [Python documentation](https
The following two steps can be skipped if HDF5 is properly configured for `pkg-config` (i.e. if executing `pkg-config --libs hdf5` returns a list of options). The following two steps can be skipped if HDF5 is properly configured for `pkg-config` (i.e. if executing `pkg-config --libs hdf5` returns a list of options).
- `export H5_CFLAGS=-I/path/to/hdf5/include` - `export H5_CFLAGS=-I/path/to/hdf5/include`
- `export H5_LDFLAGS=-L/path/to/hdf5/lib` - `export H5_LDFLAGS=-L/path/to/hdf5/lib`
On MacOS where HDF5 is installed with homebrew (i.e. `brew install hdf5`), one can use the following:
- `export H5_CFLAGS="-I$(brew --prefix hdf5)/include"`
- `export H5_LDFLAGS="-L$(brew --prefix hdf5)/lib"`
6. `pip install .` (this installs `trexio` in your environment) 6. `pip install .` (this installs `trexio` in your environment)
7. `cd test && python -m pytest -v test_api.py` (this executes several tests that verify the installation) 7. `cd test && python -m pytest -v test_api.py` (this executes several tests that verify the installation)