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.33

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.33
File
eckitlib-2.5.0.33-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.33-cp314-cp314-manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ ARM64 Details
eckitlib-2.5.0.33-cp314-cp314-macosx_15_0_x86_64.whl CPython 3.14 CPython 3.14 macOS 15.0+ x86-64 Details
eckitlib-2.5.0.33-cp314-cp314-macosx_15_0_arm64.whl CPython 3.14 CPython 3.14 macOS 15.0+ ARM64 Details
eckitlib-2.5.0.33-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.33-cp313-cp313-manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64 Details
eckitlib-2.5.0.33-cp313-cp313-macosx_15_0_x86_64.whl CPython 3.13 CPython 3.13 macOS 15.0+ x86-64 Details
eckitlib-2.5.0.33-cp313-cp313-macosx_15_0_arm64.whl CPython 3.13 CPython 3.13 macOS 15.0+ ARM64 Details
eckitlib-2.5.0.33-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.33-cp312-cp312-manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64 Details
eckitlib-2.5.0.33-cp312-cp312-macosx_15_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 15.0+ x86-64 Details
eckitlib-2.5.0.33-cp312-cp312-macosx_15_0_arm64.whl CPython 3.12 CPython 3.12 macOS 15.0+ ARM64 Details
eckitlib-2.5.0.33-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.33-cp311-cp311-manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64 Details
eckitlib-2.5.0.33-cp311-cp311-macosx_15_0_x86_64.whl CPython 3.11 CPython 3.11 macOS 15.0+ x86-64 Details
eckitlib-2.5.0.33-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.33-cp314-cp314-manylinux_2_28_x86_64.whl

Download URL eckitlib-2.5.0.33-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
15d61e597e7dc54bbd4bd4d6df001b9c212a8f19f9f7e1b9952db0fe3b7939e0
BLAKE2b-256 checksum
How to use checksums
26b05e38c37e5e17f3643cd831b0f04bf1acbb0d8c11391fc4c2184abee150ec
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.33-cp314-cp314-manylinux_2_28_aarch64.whl

Download URL eckitlib-2.5.0.33-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
694a8462acf29f25a04a1a0c1f64edbc32d668e1b230bf1887a0cd1fe6de7455
BLAKE2b-256 checksum
How to use checksums
5e2f3469b7446a3a828555cad382c185b967cdf391e24aef5fb1a34b99bf819e
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.33-cp314-cp314-macosx_15_0_x86_64.whl

Download URL eckitlib-2.5.0.33-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
00afc20a7f40dc630bec76d312420f48de4e1f9b6dae3144b5ff9fa27344b4e2
BLAKE2b-256 checksum
How to use checksums
8a3af78785a4daf64c68a248f98b85ef9fab49ac1eb78fd2644a38c21661df3b
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.33-cp314-cp314-macosx_15_0_arm64.whl

Download URL eckitlib-2.5.0.33-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
52ccafa54366fef644458b8f0f632585730839ec2a90f965812a52f0cad23083
BLAKE2b-256 checksum
How to use checksums
3e37e6e1df6f3a54e0b9747b4c44193f391d8f09536be970e4cbba143245393f
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.33-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL eckitlib-2.5.0.33-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
644344cce1bb47d410c44fa08312b47aa7ea9ee5fecd3727186e539a5e5423e7
BLAKE2b-256 checksum
How to use checksums
2ecf547f6f03fcc42a26d4d3c77cfe11e3ab7fe26779658a5253389d02cbe5a6
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.33-cp313-cp313-manylinux_2_28_aarch64.whl

Download URL eckitlib-2.5.0.33-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
da150a715e12592814e894e2692a7c08a99c1137c41d6e86e7f97fb35932b7f4
BLAKE2b-256 checksum
How to use checksums
74b469f1d12220e6be38b5ea800c024a36a7c88b4a1005117a0be77080e704ce
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.33-cp313-cp313-macosx_15_0_x86_64.whl

Download URL eckitlib-2.5.0.33-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
80cd6fbabff348825332fd9dc555631c2bf01900f9a618f6ad4021344167e6a4
BLAKE2b-256 checksum
How to use checksums
d8b19582ddd173d2b4c3ab2e76c3437727112040f49f9207be4eab997ad4235d
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.33-cp313-cp313-macosx_15_0_arm64.whl

Download URL eckitlib-2.5.0.33-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
5b9a6d9e5205db3d41ccfecfc17c095716089ccef01b2f8502701623b9c0bb69
BLAKE2b-256 checksum
How to use checksums
c9380a45b55e94aaf64beda753691bea2702555b0a218dd30db1d9e76bc2c9ad
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.33-cp312-cp312-manylinux_2_28_x86_64.whl

Download URL eckitlib-2.5.0.33-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
832b4098ffc78a2baada10e725117c90e7a23a06937315d9982db88b2df1f9ac
BLAKE2b-256 checksum
How to use checksums
6b3c8ac38004b45973138856b381ae7ed1014ef47af47e836ef2ffda5d053147
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.33-cp312-cp312-manylinux_2_28_aarch64.whl

Download URL eckitlib-2.5.0.33-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
cd5c7cefe540537b14519f30d50d77e4c61270bc58658224a5bcead7a827905f
BLAKE2b-256 checksum
How to use checksums
042982f55c8b26d368ff01e06dce89787c20279ea63bf2b1e1abbfa508f74b55
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.33-cp312-cp312-macosx_15_0_x86_64.whl

Download URL eckitlib-2.5.0.33-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
516b0972461d5c3f03e5a89e3eceaa8d41acf6d6d75bf7b4e36fd94d4027868e
BLAKE2b-256 checksum
How to use checksums
f6c488ed5675be9d7b320bd6444a3b0a776dfaaf9515c9382e8f49447443d03c
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.33-cp312-cp312-macosx_15_0_arm64.whl

Download URL eckitlib-2.5.0.33-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
2109ad99cb52de84577354d1dc79e4b6a5232eaa14b1d0c476a9217ca8a2e152
BLAKE2b-256 checksum
How to use checksums
f4da3c96f688bd3e67d392a681e7b1ef7901c0efe8b4d1ed8e53087616438536
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.33-cp311-cp311-manylinux_2_28_x86_64.whl

Download URL eckitlib-2.5.0.33-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
492b96f09cd644f844152d8bdae23dcff0b2daf2c20b33c16f0f3b9311cdf413
BLAKE2b-256 checksum
How to use checksums
dff0de7620d89fb272be00c81f0c881b450a942e4e9cef42de50350358817fba
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.33-cp311-cp311-manylinux_2_28_aarch64.whl

Download URL eckitlib-2.5.0.33-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
d4e0d1ffc87d8943bd71238d95d6a481e7a88324e6f77bf20d871746e903d24c
BLAKE2b-256 checksum
How to use checksums
f5b5554e523b74b58afe10082e8f70affd2e503aa040cea38898495091214f50
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.33-cp311-cp311-macosx_15_0_x86_64.whl

Download URL eckitlib-2.5.0.33-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
d203c445dd5ed380318b5e7bad25102ba8b337caab57d43ab334d81a8d4fb913
BLAKE2b-256 checksum
How to use checksums
0b9e5e1d75693acdf222e8fb52e409ed4cfa9c955d6d889bef58e855712fcc0a
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.33-cp311-cp311-macosx_15_0_arm64.whl

Download URL eckitlib-2.5.0.33-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
612d52943165efacb381f410e47e720f76ef1dfca3b15f3d4bd5edf378d84227
BLAKE2b-256 checksum
How to use checksums
24deacbaff231c27fab6d3e9e2142d2742505ebf5b0c20f0d0007c249ad97e5e
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