ECMWF's GRIB and BUFR decoding/encoding library
Go to file
Shahram Najm dccc47c620 ECC-1195: Remove superfluous read_only attributes 2021-01-30 12:52:06 +00:00
.github/workflows Add missing newline at EOF 2020-11-13 14:03:18 +00:00
.settings Eclipse settings 2016-09-13 18:15:47 +01:00
bamboo Upgrade cmake 2020-09-28 13:16:55 +01:00
cmake Build: openjpeg 2.4.0 2020-12-29 13:37:42 +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: Add fast BUFR test (no download needed) 2020-07-03 13:50:12 +01:00
definitions ECC-1195: Remove superfluous read_only attributes 2021-01-30 12:52:06 +00:00
doxygen Documentation: GRIB-API confluence space is removed 2020-07-17 15:04:05 +01:00
examples Testing: add Fortran test for encoding with a packingType 2021-01-13 20:52:50 +00:00
experimental Clean up: push down all experimental stuff into a separate dir 2020-10-21 11:53:03 +01:00
fortran ECC-1143: Fix for Fortran modules within bundles 2020-09-09 16:47:53 +01:00
html Documentation: GRIB-API confluence space is removed 2020-07-17 15:04:05 +01:00
ifs_samples CMake style 2020-03-30 14:07:31 +01:00
m4 cleanup old unused code. Made json bufr_dump default 2015-02-12 09:14:47 +00:00
memfs ECC-1160: Building with ENABLE_PRODUCT_BUFR=OFF and ENABLE_MEMFS=ON fails 2020-10-20 20:03:48 +01:00
perf Copyright notices: use new format 2020-01-28 14:32:34 +00:00
python ECC-1157: Python 2 support: Rename CMake option ENABLE_PYTHON to ENABLE_PYTHON2 2020-10-15 17:08:25 +01: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 ECC-1195: Accessor 'sprintf' should by default be read-only 2021-01-30 00:15:24 +00:00
tests ECC-1195: Accessor 'sprintf' should by default be read-only 2021-01-30 00:15:24 +00:00
tigge ECC-1142: Clean up 2020-08-08 13:07:16 +01:00
tools ECC-539: Reuse the codes_resolve_path function 2021-01-25 14:47:40 +00:00
windows/msvc Windows: remove old Visual Studio project files 2020-10-30 18:10:04 +00:00
.appveyor.yml Bump up version 2021-01-19 13:35:09 +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 Remove Visual Studio Code settings 2020-08-27 13:09:06 +01:00
.project Add Eclipse proj files 2014-12-11 14:45:09 +00:00
.travis.yml GitHub CI: remove ENABLE_PYTHON=0 (By default Python2 is disabled) 2020-12-22 19:34:54 +00:00
AUTHORS Update authors 2015-10-01 10:49:55 +01:00
CMakeLists.txt Bump up version 2021-01-19 13:35:09 +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 README: installation instructions 2020-08-09 13:20:05 +01:00
LICENSE Copyright notices: use new format 2020-01-28 18:07:47 +00:00
Makefile.am Windows: remove old Visual Studio project files 2020-10-30 18:10:04 +00: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 README: installation instructions 2020-08-09 13:20:05 +01: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 ECC-1189: CMake: Rename option GRIB_TIMER to ECCODES_TIMER 2021-01-06 17:49:43 +00:00
eccodes-import.cmake.in ECC-1143: CMake: Migration to ecbuild v3.4 2020-08-27 16:01:14 +01:00
eccodes.code-workspace Memfs generation 2020-10-19 09:16:24 +01:00
eccodes.sublime-project Update sublime text project 2017-03-17 18:46:27 +00:00
eccodes_config.h.in ECC-1189: CMake: Rename option GRIB_TIMER to ECCODES_TIMER 2021-01-06 17:49:43 +00:00
memfs.py Fix output file encoding with Python3 2020-11-02 14:07:59 +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 2021-01-19 13:35:09 +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 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

or

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

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.