ECMWF's GRIB and BUFR decoding/encoding library
Go to file
Shahram Najm 0d14b54d80 ECC-1631: Segmentation fault: Decode bufrdcExpandedDescriptors as string 2023-07-08 21:10:17 +00:00
.github Rename GH Actions workflow for consistency 2023-06-17 15:36:07 +00:00
.settings Eclipse settings 2016-09-13 18:15:47 +01:00
bamboo Get Bamboo CIE to work 2023-01-27 16:57:42 +00:00
cmake Build: Openjpeg 2.5.0 2022-08-13 13:25:29 +01:00
confluence ECC-1235: Add to Confluence 2021-04-26 14:28:30 +01:00
data ECC-1618: GRIB: Fix minor typos in parameter names for consistency 2023-06-22 15:03:02 +00:00
definitions ECC-1625: GRIB2: ERA6 parameters with constituentType (Part 2) 2023-07-06 15:55:44 +00:00
deprecated ECC-1511: Remove the Python2 interface 2023-02-02 17:58:34 +00:00
doxygen Doxygen: Fix python version 2022-12-27 13:10:01 +00:00
examples Include what you use 2023-06-23 16:35:01 +01:00
experimental Remove deprecated files 2023-01-29 18:10:47 +00:00
fortran Single-precision mode 2023-06-22 22:46:16 +01:00
html Documentation 2022-05-17 13:57:48 +01:00
ifs_samples IFS Samples: GRIB samples with packingType=grid_ieee 2022-06-30 19:09:15 +01:00
memfs ECC-1276: MEMFS: Better management of generated files 2021-08-31 11:38:56 +01:00
samples Sync with ecmwf develop 2023-04-21 11:15:18 +01:00
share/eccodes Rebranding 2015-02-20 13:54:12 +00:00
src ECC-1631: Segmentation fault: Decode bufrdcExpandedDescriptors as string 2023-07-08 21:10:17 +00:00
tests ECC-1631: Segmentation fault: Decode bufrdcExpandedDescriptors as string 2023-07-08 21:10:17 +00:00
tigge ECC-1508: Change file extensions to '.cc' 2023-01-30 12:01:31 +00:00
tools Tools: Remove -H option from metar compare 2023-06-28 09:49:28 +01:00
windows/msvc ECC-1212: MARS key mapping for local time templates (Part 03) 2022-06-07 17:58:57 +01:00
.appveyor.yml AppVeyor: Cannot run ctest in parallel 2023-02-02 13:05:24 +00:00
.clang-format Clang-format 2023-02-13 10:36:47 +00:00
.cproject Eclipse settings 2016-11-22 11:06:35 +00:00
.gitignore Ignore *.analyzerinfo *.snalyzerinfo files 2023-06-13 12:25:25 +00: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 author list 2021-03-21 17:26:25 +00:00
CMakeLists.txt ECC-1607: Move the version info from CMakeLists.txt to the VERSION file 2023-06-02 16:15:29 +01: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 Direct users to the support portal 2023-06-14 10:05:57 +00:00
LICENSE Copyright notices: use new format 2020-01-28 18:07:47 +00:00
NEWS Update URLs 2019-01-28 12:47:22 +00:00
NOTICE Fix WMO URL 2021-12-26 20:30:56 +00:00
README.md Direct users to the support portal 2023-06-14 10:05:57 +00:00
VERSION ECC-1607: Move the version info from CMakeLists.txt to the VERSION file 2023-06-02 16:15:29 +01: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-1521: Drop support for 32-bit architectures 2023-02-02 16:59:06 +00:00
memfs.py Performance: Exclude METAR definition files from MEMFS 2022-07-19 12:45:42 +01:00
project_summary.cmake Python3: Project summary 2018-11-26 15:20:41 +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://confluence.ecmwf.int/display/ECC/ecCodes+Home

INSTALLATION

  1. Download ecCodes from https://confluence.ecmwf.int/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://confluence.ecmwf.int/display/ECC/ecCodes+installation

If you encounter any problems please visit our Support Portal:

https://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.