Skip to main content

EcKit

Latest Tag CI CI

codecov License REUSE status Project 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

Metadata

Release files for eckitlib 2.5.0.31

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for eckitlib 2.5.0.31
File
eckitlib-2.5.0.31-cp314-cp314-manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64 Details
eckitlib-2.5.0.31-cp314-cp314-manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ ARM64 Details
eckitlib-2.5.0.31-cp314-cp314-macosx_15_0_x86_64.whl CPython 3.14 CPython 3.14 macOS 15.0+ x86-64 Details
eckitlib-2.5.0.31-cp314-cp314-macosx_15_0_arm64.whl CPython 3.14 CPython 3.14 macOS 15.0+ ARM64 Details
eckitlib-2.5.0.31-cp313-cp313-manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64 Details
eckitlib-2.5.0.31-cp313-cp313-manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64 Details
eckitlib-2.5.0.31-cp313-cp313-macosx_15_0_x86_64.whl CPython 3.13 CPython 3.13 macOS 15.0+ x86-64 Details
eckitlib-2.5.0.31-cp313-cp313-macosx_15_0_arm64.whl CPython 3.13 CPython 3.13 macOS 15.0+ ARM64 Details
eckitlib-2.5.0.31-cp312-cp312-manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64 Details
eckitlib-2.5.0.31-cp312-cp312-manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64 Details
eckitlib-2.5.0.31-cp312-cp312-macosx_15_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 15.0+ x86-64 Details
eckitlib-2.5.0.31-cp312-cp312-macosx_15_0_arm64.whl CPython 3.12 CPython 3.12 macOS 15.0+ ARM64 Details
eckitlib-2.5.0.31-cp311-cp311-manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64 Details
eckitlib-2.5.0.31-cp311-cp311-manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64 Details
eckitlib-2.5.0.31-cp311-cp311-macosx_15_0_x86_64.whl CPython 3.11 CPython 3.11 macOS 15.0+ x86-64 Details
eckitlib-2.5.0.31-cp311-cp311-macosx_15_0_arm64.whl CPython 3.11 CPython 3.11 macOS 15.0+ ARM64 Details

Total release size: 337.5 MB

Release files / eckitlib-2.5.0.31-cp314-cp314-manylinux_2_28_x86_64.whl

Download URL eckitlib-2.5.0.31-cp314-cp314-manylinux_2_28_x86_64.whl
Size 36.0 MB
Tags CPython 3.14 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
e88405b75a6d7a2a864751349c257da3d68b723564e7d62bd56035ffe3ea3f8a
BLAKE2b-256 checksum
How to use checksums
30211b55a67a8039b901b8569416e1d6d60cd6b93296d82ffdf662851a479f52
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.0

Release files / eckitlib-2.5.0.31-cp314-cp314-manylinux_2_28_aarch64.whl

Download URL eckitlib-2.5.0.31-cp314-cp314-manylinux_2_28_aarch64.whl
Size 35.2 MB
Tags CPython 3.14 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
0b6f5777c222d415f3f3ad1b5035e3c8fb6e8f5d0cc512d17b6f6616999c387a
BLAKE2b-256 checksum
How to use checksums
dd71a2c1f7bc9785479ad11d594f40579f27373b459d560d1bb5328d8d89713d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.0

Release files / eckitlib-2.5.0.31-cp314-cp314-macosx_15_0_x86_64.whl

Download URL eckitlib-2.5.0.31-cp314-cp314-macosx_15_0_x86_64.whl
Size 6.7 MB
Tags CPython 3.14 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
e50c7ed6b014c7d751a5222359e90d887ae1e5679ff963d9aa6e2715b0a45744
BLAKE2b-256 checksum
How to use checksums
354af099bb716b3bc1e2c6f24d23f872c14f09513d556480b210655e79314783
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.5

Release files / eckitlib-2.5.0.31-cp314-cp314-macosx_15_0_arm64.whl

Download URL eckitlib-2.5.0.31-cp314-cp314-macosx_15_0_arm64.whl
Size 6.6 MB
Tags CPython 3.14 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
e60ee940289c635fc76af53af848033fb05205f30cba810dce68b2debdba916b
BLAKE2b-256 checksum
How to use checksums
e017dcc7ede3904b00d3d65bb578995bd671db4614c9390bbba2cce4ce1e77d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / eckitlib-2.5.0.31-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL eckitlib-2.5.0.31-cp313-cp313-manylinux_2_28_x86_64.whl
Size 36.0 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
f407d43a35fbffeb054d58db9633577c7e09d78b7d93cddb2d228aa7b9a0dcab
BLAKE2b-256 checksum
How to use checksums
cfc0b932f5c28825964956a0528a82dbdad880fdb1be500133f027ec52f1e538
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.9

Release files / eckitlib-2.5.0.31-cp313-cp313-manylinux_2_28_aarch64.whl

Download URL eckitlib-2.5.0.31-cp313-cp313-manylinux_2_28_aarch64.whl
Size 35.2 MB
Tags CPython 3.13 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
83672e15f373fee8ee112caf62ee440f177f26cd9d70459bbda80f7a16bdf4bc
BLAKE2b-256 checksum
How to use checksums
75dbecd047d7f38250487ce7d5da7608ebc7da05c7ab5ad99c356ed5f572d269
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.9

Release files / eckitlib-2.5.0.31-cp313-cp313-macosx_15_0_x86_64.whl

Download URL eckitlib-2.5.0.31-cp313-cp313-macosx_15_0_x86_64.whl
Size 6.6 MB
Tags CPython 3.13 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
77ed4c64195a2f637d93cde3d64f704b9e856483e6d7615febcad3a2a9db172f
BLAKE2b-256 checksum
How to use checksums
2ae02772a58402cad72a87a499d8313fd132c314908ea36efc535de9a8b65575
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.2

Release files / eckitlib-2.5.0.31-cp313-cp313-macosx_15_0_arm64.whl

Download URL eckitlib-2.5.0.31-cp313-cp313-macosx_15_0_arm64.whl
Size 6.6 MB
Tags CPython 3.13 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
70833c80769357d0befe256a35bbb9d78597a705bf6145d82d2a8c75f9ec15ad
BLAKE2b-256 checksum
How to use checksums
65f7f346e7f61e4ae21753693b7018a927ff946dee73772990b26076dca349ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.15

Release files / eckitlib-2.5.0.31-cp312-cp312-manylinux_2_28_x86_64.whl

Download URL eckitlib-2.5.0.31-cp312-cp312-manylinux_2_28_x86_64.whl
Size 36.0 MB
Tags CPython 3.12 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
fd321cd2b33c166e9894892d2aa9cccedb76d43357aefb7ce3c9ffd05c2b7b5f
BLAKE2b-256 checksum
How to use checksums
b85c4cd98d9452970200bb245e15f1826ee43fd70b93113d9f28c2a5ef925966
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.12

Release files / eckitlib-2.5.0.31-cp312-cp312-manylinux_2_28_aarch64.whl

Download URL eckitlib-2.5.0.31-cp312-cp312-manylinux_2_28_aarch64.whl
Size 35.2 MB
Tags CPython 3.12 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
b156b9f3d9ce06fb88df990bf9d3979b16662eda2d100e1d3525d5e288caa41c
BLAKE2b-256 checksum
How to use checksums
bc183123be34cda6374d98e42623de4f1f340b58b59ff08691973e586d3280b8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.12

Release files / eckitlib-2.5.0.31-cp312-cp312-macosx_15_0_x86_64.whl

Download URL eckitlib-2.5.0.31-cp312-cp312-macosx_15_0_x86_64.whl
Size 6.6 MB
Tags CPython 3.12 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
d63046e6bef0b347860be3e344ea0b775879ffc0acbc15cc388189d191cd8266
BLAKE2b-256 checksum
How to use checksums
f52fb83a0fd72cb811eef7eaadc5844a05af9a4d744864eb6fe90edbdbb58cfc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.9

Release files / eckitlib-2.5.0.31-cp312-cp312-macosx_15_0_arm64.whl

Download URL eckitlib-2.5.0.31-cp312-cp312-macosx_15_0_arm64.whl
Size 6.6 MB
Tags CPython 3.12 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
6d9c0edaa13799c2d293af1ade310e387f8e3dd95ba0509315ec31cb88c447a0
BLAKE2b-256 checksum
How to use checksums
803ac8f2560be2a514e3e960b6d316fc5ae9d1bb534c6a3f7c4a12ca8ad04978
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release files / eckitlib-2.5.0.31-cp311-cp311-manylinux_2_28_x86_64.whl

Download URL eckitlib-2.5.0.31-cp311-cp311-manylinux_2_28_x86_64.whl
Size 36.0 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
2b93c5f85aabcdf1e87609522cfab718feedf83020131e23e23a858e95b628c4
BLAKE2b-256 checksum
How to use checksums
585469989dd4ffd030d864b3e9b0a97c0a8bdc5cb102c67243f937ff7b09f9d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.14

Release files / eckitlib-2.5.0.31-cp311-cp311-manylinux_2_28_aarch64.whl

Download URL eckitlib-2.5.0.31-cp311-cp311-manylinux_2_28_aarch64.whl
Size 35.2 MB
Tags CPython 3.11 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
4e3bea92b4c795afa6f67f04ec8feb066487b939623b46a93d1623796cd9278f
BLAKE2b-256 checksum
How to use checksums
ef2301c3cabdd8b1aa31473f2036ece57ccda1b8bcc4bcfce195f0aab129a0b4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.14

Release files / eckitlib-2.5.0.31-cp311-cp311-macosx_15_0_x86_64.whl

Download URL eckitlib-2.5.0.31-cp311-cp311-macosx_15_0_x86_64.whl
Size 6.7 MB
Tags CPython 3.11 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
60fc8db2b3eadc3c0645bdda2cef17fa24d12da4b00eec41eac7fdafba54fdb2
BLAKE2b-256 checksum
How to use checksums
6d792c4bc106cf4d2a12487a0b94f9311fd58f0c14ae018a535cef51cea837dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.11

Release files / eckitlib-2.5.0.31-cp311-cp311-macosx_15_0_arm64.whl

Download URL eckitlib-2.5.0.31-cp311-cp311-macosx_15_0_arm64.whl
Size 6.6 MB
Tags CPython 3.11 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
2fb896ec6d68b0f04e6610b3afa16b70c451840021d4be93c203a95edc8dee42
BLAKE2b-256 checksum
How to use checksums
dbce7efb772f7a2dcedf464a873b45f946b45b83c801f61778f799e331ebb6d0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.16

Release history Release notifications | RSS feed

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page