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

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

eckitlib-1.32.2.4-cp313-cp313-macosx_13_0_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

eckitlib-1.32.2.4-cp313-cp313-macosx_13_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

eckitlib-1.32.2.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (44.6 MB view details)

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

eckitlib-1.32.2.4-cp312-cp312-macosx_13_0_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

eckitlib-1.32.2.4-cp312-cp312-macosx_13_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

eckitlib-1.32.2.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (44.6 MB view details)

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

eckitlib-1.32.2.4-cp311-cp311-macosx_13_0_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

eckitlib-1.32.2.4-cp311-cp311-macosx_13_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

eckitlib-1.32.2.4-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (44.6 MB view details)

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

eckitlib-1.32.2.4-cp310-cp310-macosx_13_0_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

eckitlib-1.32.2.4-cp310-cp310-macosx_13_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

eckitlib-1.32.2.4-1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (44.6 MB view details)

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

File details

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

File metadata

File hashes

Hashes for eckitlib-1.32.2.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 79cf8fce45a764b4c86cb2507fb57c66dbd07ca82a44dac86be9e4afd7d8ac36
MD5 40bc578611578dee9c4581b7edb939d7
BLAKE2b-256 071c4134844bf3c75a96da88e2db23e820872f2fd75adbbb309bda9fa33cb1d8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.32.2.4-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 bc271381eab719b50d2e58aba96f6ff30dae125bfc4a8964ad1ba5a848814089
MD5 f98ce60a1bab349675caa86ad51253af
BLAKE2b-256 ee7c81da96abd04ef6fb061c32dac9741ec4e69f5086780cc449223c5f64a134

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.32.2.4-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 2d5944b83401945d45f4b2874724c1487404e31ea593c01a228cd5b61b42ac6d
MD5 c90146960fccb7444ec4385f2424042e
BLAKE2b-256 1c54fa53a320ca5f86cf295e303f4519e0482fc97ed61a993e98c72e6a1885b8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.32.2.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 20ac471546ca156598a162a069f5da5fd3a76626b7775a6759506a72d1340aad
MD5 e325bbd4362cd43c8d4de35ddaad5f94
BLAKE2b-256 9d5bfe26416dc7a2a8498bb8e1a7be8596f0741e0dbe3a8fdbd434ed11c32d39

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.32.2.4-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 321b837c7d256ff29dddef63e7e24aa4fc5f8a113dc8b7f0132fd2f5b7711519
MD5 8766bb5615a605640d4045f0adf69c7b
BLAKE2b-256 e2200147c1865a2beab651d8b3f4dce89072bfd8faf4b701f02db5d7d4b220c0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.32.2.4-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 9760700d71cf9bc1e72bdc2768ce791e80014aa7c0bf14c39111a4f991c743d7
MD5 05e929c815b59ade65ba8ea98d44600a
BLAKE2b-256 942244ba92cabe361e3de1e6fec0f901a93a34b10f2fa75c41021653ee215070

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.32.2.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 69d6c359b591f79c6c438f7b1956f869031dfa0fb4adf9c9d8ce610e1c32123d
MD5 2618d79d328fda6b1a278b3b760983b8
BLAKE2b-256 904673e1a11c7237824a648bcf0f622d28b700bb56d73f23f6014d4982c98d2e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.32.2.4-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 01f419abae01bc238430e39874cafd5cb8187a5803cfba46f2a6832da8a01a12
MD5 d3b0aad1d0332d92fd5afd067eb03c48
BLAKE2b-256 c806c09e58e2af3f12f020d400901fb7fc890a193530f46e45b43c880242cec3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.32.2.4-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 4c9a649cd8b3e7701128b560d6e9ef0957212cc69c57c74be278d56b4730278c
MD5 e7fbcdb67437c402417a7b374e32e42c
BLAKE2b-256 a7a50493b12dd19481851a2a127c1344ee79868b9a78176b477cb747421d1b42

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.32.2.4-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 132038741ca1f1a289886ca671dd567fae62878e13bd38b20d7b345b4fe3b4a0
MD5 ff1b5136492fc307db915e1b7f9b206b
BLAKE2b-256 f8ff45f35e7e7bd29fab8d97f6b1267eeef6bbd80db9d5e3b85253a79dea1b32

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.32.2.4-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 3e4b493625f9b9daae1c2704a8553405875cee1b00d3eb4902d6be9ae75f024a
MD5 34db09d640b2bae36f6e020c277ba120
BLAKE2b-256 a130adfe5ce4afab0b9027e4ef4c6b23e7446c9edb55fee2538afb44e4747624

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.32.2.4-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 13ee57b5b34523c0301d5e75510dc01fb302a653574955be60aa37a4436645b5
MD5 ff3d60f80c5e9eebb57ec447cbff8a84
BLAKE2b-256 fecb41ec2e9c35ca794737e5eb09bfdb1d4a1b893f4c5e533cef89462af74648

See more details on using hashes here.

File details

Details for the file eckitlib-1.32.2.4-1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-1.32.2.4-1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 439724f7176d4ad4c1e7ca8ad0e925e4df9cd51078bc70d7f1996f01e00156e2
MD5 51cab3e96c189f97d54b4b3d3c1be75d
BLAKE2b-256 b754ec3587a08afb923a7ce95eaa06823391c020cf0f9400c3bc02aa47223145

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