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.1-cp313-cp313-macosx_13_0_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

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

Uploaded CPython 3.13macOS 13.0+ ARM64

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

Uploaded CPython 3.12macOS 13.0+ x86-64

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

Uploaded CPython 3.12macOS 13.0+ ARM64

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

Uploaded CPython 3.11macOS 13.0+ x86-64

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

Uploaded CPython 3.11macOS 13.0+ ARM64

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

Uploaded CPython 3.10macOS 13.0+ x86-64

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

Uploaded CPython 3.10macOS 13.0+ ARM64

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

Uploaded CPython 3.9macOS 13.0+ x86-64

eckitlib-1.31.1-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.1-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-1.31.1-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 b689814814c47b86cc8036bf6d24f17226dbcee22754ba6c970b0018c3c0e58f
MD5 13786429cc129efcf0fd03d5b16e8972
BLAKE2b-256 29cddab3b87cad967026870ea291c2218cca313b243161d96bc64ac7036649af

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.1-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 269043bf64671aba8c9ab846ee6a1e5f31ec89a1a6af067946375f6452fb7e66
MD5 0ba1c264d51174d49e409b17d1969925
BLAKE2b-256 393264609c9d66376097a6d773eba972a83e7a9105daf6d6f842157f93c4cab9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.1-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 dfd01fef06f127bba50ee8e3593e3eac51bae0efec4b0e88c15a7018ce9673e6
MD5 05591712a0d8222369ce6d3bfdf7f8e5
BLAKE2b-256 ec140367fec9b9469a6c86d4c87a0b24f006340f722418b312727cd8515b45f6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.1-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 c9a8f7496d4b763f3956feb517a0e492a4d7a841bcfc311f6196b7fa57f50e51
MD5 91b2196980a6342f470dbe567250fc71
BLAKE2b-256 67003660ff39f497f9cee2b0ee0890b698b53df45a6ef0b6ea29f06acdab2515

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.1-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 e854270918655bd4f3a229564a8e88abffa281634d5b903cfde0e4121a0c0428
MD5 7280586a7cc58bb1d086a4f48faaf0b9
BLAKE2b-256 7fd49c8378be9eaff53c8923a9f9c0ebdeab25295187e24bbe08edd6f24c5932

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.1-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 141bbf641df87a90d93a40afcd496d62ec4b97bd983bcbdd2529921b885ea084
MD5 d148be40dee5fe64fd510b4ad82f9a15
BLAKE2b-256 ea0b7dd47f1d54f32a4a866ae6f00fe4221455acdec5797feeed3c76a7453797

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.1-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 e373ce2e0677cd2c6a782154fbedb9b3768eaa08dfae9d6a4e5fb9076bf23c51
MD5 295dbfcc648853da70d0e2fe5fb66428
BLAKE2b-256 42b326589ee64d0d2794559046b705e9c939effcf361798a80e397f03eb85a47

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.1-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 10f64e6f2b1b5593d952880e8e8834818ffe65b31e6722af00d99237081b6ed1
MD5 d6cfef8e7ae4335c79e8d99ee65e4dcb
BLAKE2b-256 0753c4d9fe92b44f4f70ee4ec225faabfdc61ac79d327f7be5560cb358c38850

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.1-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 b428b49fab10ed5860a97cc7bd911ce0d04ba36c4b0c3e9fa70c147a43d102f3
MD5 db216cd488a9860e3fdd6121e3d1d3e4
BLAKE2b-256 d848db86d3658e26fd609bd10937e9a6d99b8676599ed3be2098adb55fd18cca

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.1-cp39-cp39-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 fa7ca01b48c4ce6ee730500bd4500180550ff041843440e5f1a3e84df81989d4
MD5 199d0a64b568dc498c3dd19743c557e0
BLAKE2b-256 cf606c485660d7eb1e1b262a62fc80072c9c5f1bd746962ea85e03924808d690

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