- Notifications
You must be signed in to change notification settings - Fork1
Low-level Rust bindings for ecCodes.
License
ScaleWeather/eccodes-sys
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This is a-sys
crate with raw, unsafe bindings to the library and its API should not be used directly. See theeccodes 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 byEuropean Centre for Medium-Range Weather Forecasts.
This crate will look for existinglibeccodes
installation usingpkg-config.The ecCodes library is then linked and bindings are generated usingbindgen.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 useapt-get
:
sudo apt-get install libeccodes-dev
Alternatively, you can install the library manually from source in suitable directoryfollowingthis instructions.
Then add thelib/pkgconfig
directory from your ecCodes installation directoryto thePKG_CONFIG_PATH
environmental variable. If ecCodes have been compiledas shared library you will also need to specifyLD_LIBRARY_PATH
.For example:
export PKG_CONFIG_PATH=<your_eccodes_path>/lib/pkgconfigexport LD_LIBRARY_PATH=<your_eccodes_path>/lib
There are two development features available:
docs
- for documentation building, does not link ecCodes and includesbindings-docs.rs
intolib.rs
tests
- turns on generation of layout tests bybindgen
, should not be used in production. Layout tests are off by default as they dereference null pointers causing undefined behavior
The ecCodes library and these bindings are licensed under theApache License Version 2.0
About
Low-level Rust bindings for ecCodes.