ECMWF's GRIB and BUFR decoding/encoding library
Go to file
Shahram Najm 8c5d7e7234 Clang static analyser: protect against division by zero 2020-02-12 12:52:36 +00:00
.settings Eclipse settings 2016-09-13 18:15:47 +01:00
.vscode Visual Studio Code v1.37.1 2019-08-28 13:00:40 +01:00
bamboo Bamboo: Fix GCC build 2019-04-30 14:29:03 +01:00
cmake ECC-1037: eccodes should build with openjpeg 2.3 2019-12-06 12:00:59 +00:00
concepts Ported grib_api 1.10.4 from p4 to git 2013-03-25 12:04:10 +00:00
config cleanup old unused code. Made json bufr_dump default 2015-02-12 09:14:47 +00:00
confluence ECC-567: codes_split_file documentation 2017-10-27 14:50:59 +01:00
data Testing: Don't compare doubles with 10 decimal places 2019-12-16 13:32:22 +00:00
definitions ECC-992: Remove 189 (accumulated parameter) 2020-02-10 13:08:37 +00:00
doxygen Remove DOS line endings 2019-01-07 13:54:29 +00:00
examples Examples: Fix memory leaks 2020-02-12 12:20:07 +00:00
fortran Copyright notices: use new format 2020-01-28 14:32:34 +00:00
gaussian_experimental Merge grib api and eccodes - part 4 - src compiles 2014-06-20 18:18:57 +01:00
gribex Merge grib api and eccodes - part 4 - src compiles 2014-06-20 18:18:57 +01:00
html Documentation (See SUP-2504) 2018-07-05 16:34:22 +01:00
ifs_samples ECC-568: add option to skip installation of samples and definitions, to be used together with ENABLE_MEMFS 2017-07-19 17:14:19 +01:00
java Ported grib_api 1.10.4 from p4 to git 2013-03-25 12:04:10 +00:00
m4 cleanup old unused code. Made json bufr_dump default 2015-02-12 09:14:47 +00:00
memfs ECC-535: Workaround for internal compiler error in memfs.c (HPC-230) 2017-09-01 16:34:13 +00:00
parameters Replace macros/makefile vars to use ECCODES prefix 2015-01-24 22:19:32 +00:00
perf Copyright notices: use new format 2020-01-28 14:32:34 +00:00
perl Copyright notices: use new format 2020-01-28 14:32:34 +00:00
python Copyright notices: use new format 2020-01-28 14:32:34 +00:00
python3 Copyright notices: use new format 2020-01-28 14:32:34 +00:00
rpms ECC-72: Discontinue support for Fortran77 2015-02-27 18:21:10 +00:00
samples ECC-1018: Reduced size of sample file 2020-01-10 15:40:59 +00:00
share/eccodes Rebranding 2015-02-20 13:54:12 +00:00
src Clang static analyser: protect against division by zero 2020-02-12 12:52:36 +00:00
templates Ported grib_api 1.10.4 from p4 to git 2013-03-25 12:04:10 +00:00
tests Testing: GTS header 2020-02-10 17:48:41 +00:00
tigge Copyright notices: use new format 2020-01-28 14:32:34 +00:00
tools Clang static analyser: Null pointer argument in call to string comparison function 2020-02-12 11:13:03 +00:00
windows/msvc Windows: Added new VS project for bufr_filter 2019-12-16 17:59:04 +00:00
.appveyor.yml Bump up version 2020-01-13 16:39:03 +00:00
.clang-format Applied clang-format (Part 1) 2020-01-22 13:10:59 +00:00
.cproject Eclipse settings 2016-11-22 11:06:35 +00:00
.gitignore Update ignore list 2019-05-16 17:32:15 +01:00
.project Add Eclipse proj files 2014-12-11 14:45:09 +00:00
.travis.yml Daniel Tipping suggestion: Switch the osx_image to xcode10.2 to fix the MacOS build 2019-08-09 10:56:34 +01:00
AUTHORS Update authors 2015-10-01 10:49:55 +01:00
CMakeLists.txt Copyright notices: use new format 2020-01-28 14:32:34 +00:00
COPYING Ported grib_api 1.10.4 from p4 to git 2013-03-25 12:04:10 +00:00
ChangeLog Update URLs 2019-01-28 12:47:22 +00:00
INSTALL Python3 install: Use pip3 rather than pip 2019-08-09 16:35:59 +01:00
LICENSE Copyright notices: use new format 2020-01-28 18:07:47 +00:00
Makefile.am Remove grib data from distro 2015-07-09 14:18:08 +01:00
NEWS Update URLs 2019-01-28 12:47:22 +00:00
NOTICE Copyright notices: use new format 2020-01-28 14:32:34 +00:00
README.md Copyright notices: use new format 2020-01-28 14:32:34 +00:00
VERSION.cmake Bump up version 2020-01-13 16:39:03 +00:00
acinclude.m4 Fix issue with pthreads test (cast to pointer from integer of different size) 2015-04-17 14:42:00 +01:00
autogen.sh Remove restriction on autoreconf version 2013-08-22 17:01:16 +01:00
configure.ac Rebranding: ABI 2015-02-25 18:11:17 +00:00
eccodes-import.cmake.in Make the definitions and samples paths relocatable 2019-04-30 13:51:00 +01:00
eccodes.sublime-project Update sublime text project 2017-03-17 18:46:27 +00:00
eccodes_config.h.in Copyright notices: use new format 2020-01-28 14:32:34 +00:00
make_dist_definitions GRIB-446 and GRIB-693: Missing version information in grib_api header files 2015-02-25 17:42:04 +00:00
memfs.py METAR and TAF are experimental 2020-01-16 18:29:31 +00:00
project_summary.cmake Python3: Project summary 2018-11-26 15:20:41 +00:00
show_compile.sh Copyright notices: use new format 2020-01-28 14:32:34 +00:00
tox.ini ECC-188 Add tox.ini with flake8 configuration 2015-11-12 15:52:26 +00:00
version.sh Bump up version 2020-01-13 16:39:03 +00:00

README.md

ecCodes

Linux & macOS: master Linux & macOS: develop Windows: master Windows: develop

ecCodes is a package developed by ECMWF which provides an application programming interface and a set of tools for decoding and encoding messages in the following formats:

  • WMO FM-92 GRIB edition 1 and edition 2
  • WMO FM-94 BUFR edition 3 and edition 4
  • WMO GTS abbreviated header (only decoding)

A useful set of command line tools provide quick access to the messages. C, Fortran 90 and Python interfaces provide access to the main ecCodes functionality.

ecCodes is an evolution of GRIB API. It is designed to provide the user with a simple set of functions to access data from several formats with a key/value approach.

Documentation can be found here: https://software.ecmwf.int/wiki/display/ECC/ecCodes+Home

INSTALLATION

  1. Download ecCodes from https://software.ecmwf.int/wiki/display/ECC/Releases

  2. Unpack distribution:

    tar -xzf eccodes-x.y.z-Source.tar.gz
    
  3. Create a separate directory where to build ecCodes:

    mkdir build
    cd build
    
  4. Run cmake pointing to the source and specify the installation location:

    cmake  ../eccodes-x.y.z-Source -DCMAKE_INSTALL_PREFIX=/path/to/where/you/install/eccodes
    

    It is strongly recommended that you install into a clean directory

  5. Compile, test and install:

    make
    ctest
    make install
    

To add the Python3 bindings, use pip3 install from PyPI as follows:

pip3 install eccodes-python

or

pip3 install --install-option="--prefix=/path/to/where/you/install/eccodes" eccodes-python

For more details, please see: https://software.ecmwf.int/wiki/display/ECC/ecCodes+installation

If you encounter any problems please send an e-mail with your problem to:

Software.Support@ecmwf.int

(C) Copyright 2005- ECMWF.

This software is licensed under the terms of the Apache Licence Version 2.0 which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.

In applying this licence, ECMWF does not waive the privileges and immunities granted to it by virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction.