Skip to main content

EcKit

Latest Tag CI CI

codecov License Project Maturity

[!IMPORTANT] This software is Graduated and subject to ECMWF's guidelines on Software Maturity.

Overview

EcKit is a cross-platform C++ toolkit that supports development of tools and applications at ECMWF. It is based on code developed over the last 20 years within the MARS software and was re-factored out to be reused by other applications. It provides an abstraction layer on top of the operating system, so it is easier to port code to new architectures. It is developed taking into account the robustness requirements of running production systems at ECMWF. The main focus is UNIX/POSIX systems, and it has been thoroughly tested on Linux and Mac OSX. Historically, the code base pre-dates and in some way can be seen as a leaner substitute for some 'Boost' libraries.

Features

It features facilities to easily handle, in a cross-platform way:

  • multi-threading
  • json and yaml parsing
  • object serialization and persistence
  • object serialization supporting compression, to and from file and network
  • configuration of user options and resources
  • file-system abstraction
  • regular expressions
  • socket networking
  • http protocol
  • type-to-type conversions
  • asynchronous IO
  • asynchronous processing
  • exception handling and stack dumping
  • MPI object-oriented wrapper
  • linear algebra abstraction with multiple backends (BLAS, MKL, Eigen3)
  • advanced container classes
  • space partition trees
  • file-mapped arrays

Requirements

Make sure ecbuild is installed and the ecbuild executable script is found (which ecbuild).

Now proceed with installation as follows:

# Environment --- Edit as needed
srcdir=$(pwd)
builddir=build
installdir=$HOME/.local

# 1. Create the build directory:
mkdir $builddir
cd $builddir

# 2. Run CMake
ecbuild --prefix=$installdir -- $srcdir

# 3. Compile / Install
make -j10
make install

# 4. Check installation
$installdir/bin/eckit-version

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

eckitlib-2.1.1.26-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (7.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

eckitlib-2.1.1.26-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

eckitlib-2.1.1.26-cp314-cp314-macosx_13_0_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.14macOS 13.0+ x86-64

eckitlib-2.1.1.26-cp314-cp314-macosx_13_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.14macOS 13.0+ ARM64

eckitlib-2.1.1.26-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (7.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

eckitlib-2.1.1.26-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

eckitlib-2.1.1.26-cp313-cp313-macosx_13_0_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

eckitlib-2.1.1.26-cp313-cp313-macosx_13_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

eckitlib-2.1.1.26-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (7.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

eckitlib-2.1.1.26-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

eckitlib-2.1.1.26-cp312-cp312-macosx_13_0_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

eckitlib-2.1.1.26-cp312-cp312-macosx_13_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

eckitlib-2.1.1.26-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (7.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

eckitlib-2.1.1.26-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

eckitlib-2.1.1.26-cp311-cp311-macosx_13_0_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

eckitlib-2.1.1.26-cp311-cp311-macosx_13_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

eckitlib-2.1.1.26-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (7.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

eckitlib-2.1.1.26-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

eckitlib-2.1.1.26-cp310-cp310-macosx_13_0_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

eckitlib-2.1.1.26-cp310-cp310-macosx_13_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

File details

Details for the file eckitlib-2.1.1.26-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0e5c197940585c2c3cac6f7098830b1e6e8fda2a810977b1ede4f5677c8ea5a7
MD5 dc266ba427a76f399e0fdbd52f71422a
BLAKE2b-256 9c611145f9a7d335a7836e8713917d1b7cdb9c58307f064343ee4ce8bee7a8c6

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7423149aa3742129f0929f85a8cc4bd637841ceb581d3eb9d564dc13e729e686
MD5 ed8b74740e9848574928bfdfce682aac
BLAKE2b-256 477d43da4ab8697bf261a19e30138907aeb4e5802f23241a42da63d603ec1cfa

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp314-cp314-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp314-cp314-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 3c4ac9cd84804ed67f09ff59792e551d8f91fb7a720657c0879c230d208ce861
MD5 19a0dfbfd405792e141168cef64db42c
BLAKE2b-256 30dcaaeb8766288c5ff9870757a17c3a08228cad24f4b57d95210af9e5390114

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp314-cp314-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp314-cp314-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 6f0fd96207c35cb4241ed5b88b7708eea7fe6d74068ad6dc48f2486859528496
MD5 4f14e06907aa439d9b6826161d9ad83d
BLAKE2b-256 b238da477636044d4cb8ec936a6359355b48cb674ce30e37f356ef2901a75ddf

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b432df5e6a15cec8bba24cd21c9d7823edbad2eb944b788021cfb2eec02c459b
MD5 4a11cd732b3461dd75f09f565c2d72d1
BLAKE2b-256 3b3156e9a7c99b0cde691977f5f02e1ea78cf88c2bbddd0723bd54998e011352

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 dfbf7bae139c156f1c2450e51f826136708b4ee55033ce6ecdd329685c330ed9
MD5 40ee31fe3ae14e246208ac07363bf815
BLAKE2b-256 7d7a3b67fd567503318cb589c270f7b82c30084c60f50e1074c364e140a0e950

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 9d7f30627c1f8b2011fb7ce55732f7ef03e815397e74dcf7e454a03978bdf818
MD5 749d5dc5676080bd130eea7a461719c2
BLAKE2b-256 bdfa01b51ee8cda87c75f55ecafc569d52929badfe5f4984ff179cc40e470bfd

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 11ee25ef262e23fef6478fdc26db020a388ee32c0510fa7b685f09821829471c
MD5 5d8c5bcbe2873cd2fea0bc4a32286aaa
BLAKE2b-256 467f66e225af369c0a20d07bc5db686bb4cb63172d65d1170d4cd95be4e10d1f

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d719d9580f04d37b34fa85f41d849e40b77d8b2be3e2af1d5dab5e42d25605ed
MD5 8e566545db14a4f8b845b34781da2586
BLAKE2b-256 6b6dcdbd51f0848cf9a4410761c666361c2c35d93635e9bfb7cbc715aa39950a

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 213e667f5533ed7ded1b30beecad3e34560ed34c92da44a9945be991d9bc2c64
MD5 9c194db6364539afb4b5bfbe37a52f6c
BLAKE2b-256 2c5613f1cf010ba2b4f0087e50f1c824f614e97b52c16914e4460db167a789ef

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 a5caf612b4fe2322a1f594a2cb0687c2509926418f8bf9ba235736114ce6ccd1
MD5 bbeefb0670257597d3c621ce17efcb95
BLAKE2b-256 fc0d4e13acec84430356f69a1646b6c6d503add0703978d0ba116738675c49d6

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 ee0103b532e9e5dfd454d5de3616defe295d84115b8f6e5922acca1f70857dbc
MD5 03212d58c0e5346d60fc60487135a00c
BLAKE2b-256 c79ec86bfda3293247f469db5271482b0e08ae2520001f918b8fd4f12bdd7065

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fcb2cf107b86a8757fedd26961c5c4d26458e07ef3a9e5c202ef6907465c6691
MD5 06fb881f29b440bf728bf0f764e4a416
BLAKE2b-256 da03464ffd0681e3f93625865b011d05c6b26e60488e753558caefa11ee898b6

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 169c3c188cbb769f2c47c382c26a4730a48b47cdd1411404f1c2ccb6b08ae487
MD5 a7f5cfa096ef8cfbe6dc8fbf43d3f567
BLAKE2b-256 a16fcfb50af2ca8df6879bb06acab1650adbab88dab926e652614393257e7b4c

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 52a730578fbfec59472dce90946ea6c0e796810225a5595fac569e82095d2009
MD5 aa46685085d9d46d9bd1375a83564903
BLAKE2b-256 2e64c4a6346576d3cd8d7d7e42cb2f92c5d3dbeeb63e1394d6cc7c52fa7ad424

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 c434f15d661b8e9cd96925560fc97bdf0692920199ba3645ae576e53f94d107d
MD5 27e31c7147161380c8b11ebff6e074d0
BLAKE2b-256 e07fd0734ceaecd6dc1dda92074c2dd19aa155e0e69b09eb07b04c802f1e16dd

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d5f0422613b671d5074581d0afdc92d9ca52a2afe95bfcf1191a944f4744bd56
MD5 6cffb845f3389fbfcd0862440725fd4b
BLAKE2b-256 d9c44e18763e97e3b577bb71002993bbd4bdc88cd4a6704b1e64dcab0c75d606

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 31b31a3a63853998c775192bff62e9a420fe2ca4f1792c0a26e79189364ba30f
MD5 cdf2e2ac6e8f69886ee3ede955215357
BLAKE2b-256 5a8ed00c839b77f994f4ea34b892157bd9c15fe68ca2793f23fd570741934f4a

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 b1013b0f922a1f52ef331939a873793797634008236f2ccf6fcfd740a9afc1d4
MD5 303212c9985a0d208ae22ec56d67c66e
BLAKE2b-256 4c4e72c5e4656c3cab6cbd3e414fcb6cce87432d80338b615ba6ce5f69e1272d

See more details on using hashes here.

File details

Details for the file eckitlib-2.1.1.26-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for eckitlib-2.1.1.26-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 15e031ef4b80118906cb593d201ac15fa877637dabb80c9658c4d2f7f57fdaf2
MD5 a2f0431f03b991a47ed5ef8741b21b8b
BLAKE2b-256 1036b1f277335c92f1f60795c6cb1a051f25d6d1e86a1f366ea13909e086aca1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page