Crates.io | eccodes-sys |
lib.rs | eccodes-sys |
version | 0.5.2 |
source | src |
created_at | 2021-06-25 18:19:54.696062 |
updated_at | 2024-01-30 12:07:32.790726 |
description | Low-level Rust bindings for latests ecCodes version. |
homepage | |
repository | https://github.com/ScaleWeather/eccodes-sys |
max_upload_size | |
id | 414918 |
size | 181,291 |
This is a -sys
crate with raw, unsafe bindings to the library and its API should not be used directly. See the eccodes crate for high-level, safe bindings.
Due to the complexity of ecCodes library the decision has been made that this crate will not build ecCodes from source. See sections below for additional information how to install ecCodes on your system.
ecCodes is an open-source library for reading and writing GRIB and BUFR files developed by European Centre for Medium-Range Weather Forecasts.
This crate will look for existing libeccodes
installation using pkg-config.
The ecCodes library is then linked and bindings are generated using bindgen.
If the library is not found, the build will fail.
The recommended way to install ecCodes on your computer is using your package manager.
For example, on Ubuntu you can use apt-get
:
sudo apt-get install libeccodes-dev
Alternatively, you can install the library manually from source in suitable directory following this instructions.
Then add the lib/pkgconfig
directory from your ecCodes installation directory
to the PKG_CONFIG_PATH
environmental variable. If ecCodes have been compiled
as shared library you will also need to specify LD_LIBRARY_PATH
.
For example:
export PKG_CONFIG_PATH=<your_eccodes_path>/lib/pkgconfig
export LD_LIBRARY_PATH=<your_eccodes_path>/lib
There are two development features available:
docs
- for documentation building, does not link ecCodes and includes bindings-docs.rs
into lib.rs
tests
- turns on generation of layout tests by bindgen
, should not be used in production. Layout tests are off by default as they dereference null pointers causing undefined behaviorThe ecCodes library and these bindings are licensed under the Apache License Version 2.0