Skip to main content

"eckitlib"

Project description

eckit

Latest Tag CI CI codecov License

Project home: https://software.ecmwf.int/wiki/display/ECKIT

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 a 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 AIX, 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.

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, Armadillo, Eigen3)
  • advanced container classes
  • space partition trees
  • file-mapped arrays

Requirements

Tested compilers include:

  • GCC 4.9.1, 5.3.0, 6.3.0, 7.2.0
  • Intel 15.0.2, 16.0.3, 17, 18
  • CCE 8.4.5, 8.5.8, 8.6.2
  • Apple LLVM 9.1.0 (clang-902.0.39.1)

Required dependencies:

  • CMake --- For use and installation see http://www.cmake.org/
  • ecbuild --- ECMWF library of CMake macros
  • Perl5 --- For some code generation

Installation

Eckit employs an out-of-source build/install based on CMake.

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

Project details


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-1.31.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (45.2 MB view details)

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

eckitlib-1.31.0-cp313-cp313-macosx_13_0_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

eckitlib-1.31.0-cp313-cp313-macosx_13_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

eckitlib-1.31.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (45.2 MB view details)

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

eckitlib-1.31.0-cp312-cp312-macosx_13_0_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

eckitlib-1.31.0-cp312-cp312-macosx_13_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

eckitlib-1.31.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (45.2 MB view details)

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

eckitlib-1.31.0-cp311-cp311-macosx_13_0_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

eckitlib-1.31.0-cp311-cp311-macosx_13_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

eckitlib-1.31.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (45.2 MB view details)

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

eckitlib-1.31.0-cp310-cp310-macosx_13_0_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

eckitlib-1.31.0-cp310-cp310-macosx_13_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

eckitlib-1.31.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (45.2 MB view details)

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

eckitlib-1.31.0-cp39-cp39-macosx_13_0_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.9macOS 13.0+ x86-64

eckitlib-1.31.0-cp39-cp39-macosx_13_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.9macOS 13.0+ ARM64

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 795b1189d058693b817b72f7bb8ff13537f94f67cbc19abdf6af352dfd7da27d
MD5 3073eb82ff20404a4bcaa8d82cd2f98e
BLAKE2b-256 fbd197b72cfcd7178aa74729ea2dd57b4513082aa80ed3834677eb0fa7dbbbbd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.0-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 0c882eba182259cda0d88b73493fcb21bf401ac211904a85dbe771f21e061acc
MD5 ec9963c4d0755d0189b18745c2492cc1
BLAKE2b-256 5190131108388058ba7ad0e47729711bdebb3bcb2800cf9bf7e5cd01b127ba63

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.0-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 ab14a780d12076fa787ff867c114ed5ba07cb847105ab7884b1e3c8b0cd54c14
MD5 e30b610fe27341b1e64d3e5029e09d41
BLAKE2b-256 5f26f7996c78c4803f192460edd192732b57ee2e7ac906874c1f1dc025b09835

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 434153b00ee5c72d338b5bcd05a62ecbb3880f544ef1633dc5e868452fe90592
MD5 4ee721a82a5120ab75feadae53952147
BLAKE2b-256 40e14096d90beea48738a35c5d74c8c68ec77b9818c80b5b69c77d66aca3a0b2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.0-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 dda0feef3e54fa610a0da731071c6a3d5d0bd0e721caea65def3c80b6dd4225b
MD5 cdf96626b86eb77f768d1822c2502197
BLAKE2b-256 dc0b784a7164e8da52961b63de143a02aeeb3523817ef38dd259f95b11d3de32

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.0-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 78acc20b0e01a34e15ae07805e06cc02982f7ba0a029e33083be48bb48033ece
MD5 7ef473fd105b73188553a38a3c27e289
BLAKE2b-256 fd50f9a446558aaa15f2644e164ca13d26330f01885eaeaec44873991c03d243

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8a24f76191e1c25192a97df85e8a6fdac32763b5057969c4e7217bbe80585993
MD5 12ed66f950eb9456e43a7221b3c02062
BLAKE2b-256 18d42b71bfa53d31e5fc8274d4941258b32fbc06cb95332184aad004af87ad9d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.0-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 e38ba6567b5aca0d48cbee757cc0fa5c2203ea3bf11e6fa1f2ae5d747cb02520
MD5 1acae9aebf2765f34475a7497f28e331
BLAKE2b-256 3a8bc0635b071027e1ea018a0c362238c6db72389dbce5e9b7c72b80cee2cd57

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.0-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 0af513859759a6d1ec74a6a6ca5fb3a025d51e04d362b26dc2b3eac0bf7827c8
MD5 848628be1a22da9a757d66309acb945a
BLAKE2b-256 6ded3c34b8d4f440fbf8dcabedf17cfe2087337b30a17747f91969ccf7f45f18

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1a70cca10ed0465916cb5b16df0c21a38ace27f52a864c8984665e998dea3555
MD5 204396061bc6cd4cdbe5791f2629c09a
BLAKE2b-256 dc341ea65b61b2415cbcbc20e9aeee0552bb121d416b716d6e08eae726c1a1c2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.0-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 111681ec67349f1f006ba4bed7ed3fa69efdec1061bb7c48e28bdef74c5b8c60
MD5 0b547d9dfcc7e1025ff7890e7082d044
BLAKE2b-256 23257a085ce7e55839642408eee676731a3ba56bdb01a5800472a18b5de31527

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.0-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 8ec8158fc716b9534c775258aab4faeac23705c3d1f095e00f2cbc06ebefdea9
MD5 deb871d7af9201be9394534c17099ca8
BLAKE2b-256 fe43edf97315268d9c563cc387f2d943305a59b38f63d177588904bd3f868ec3

See more details on using hashes here.

File details

Details for the file eckitlib-1.31.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-1.31.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8f4928625b40a10d341b2a651a315d90660858013d6d68970f5657de9e364887
MD5 48231ff1e9d9bd6f8de173fcb963bfaa
BLAKE2b-256 b5dd51e532a95b5844b321f1a3d1306d23e22b231cea613847c2573e2685f48a

See more details on using hashes here.

File details

Details for the file eckitlib-1.31.0-cp39-cp39-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-1.31.0-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 b4012ad2b8783961f6bc4147662d7f721aa46aaaf0de5c5dd9063ac3aa3f164d
MD5 98cf826c4b9d32e383c0e5066a324f7c
BLAKE2b-256 0017a2a0cf300456c316c607c07ed7569cf7a765a9f5ca439f090c458de19a48

See more details on using hashes here.

File details

Details for the file eckitlib-1.31.0-cp39-cp39-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for eckitlib-1.31.0-cp39-cp39-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 09b8717a4cec8e3e2b40f22dabeba5172f880e5d42de573feca1907369656b0c
MD5 994d1f75f33f0486447aed01577a4fda
BLAKE2b-256 20fc5406193aa418c6450d4b83de60cf6e826528174c8dd0f5c7b90cde495721

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 Pingdom Monitoring Sentry Error logging StatusPage Status page