Skip to main content

"eckitlib"

Project description

eckit

eckit release version travis master travis develop Codacy Badge 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.28.4-cp313-cp313-manylinux_2_28_x86_64.whl (35.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

eckitlib-1.28.4-cp313-cp313-macosx_13_0_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

eckitlib-1.28.4-cp313-cp313-macosx_13_0_arm64.whl (2.7 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

eckitlib-1.28.4-cp312-cp312-manylinux_2_28_x86_64.whl (35.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

eckitlib-1.28.4-cp312-cp312-macosx_13_0_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

eckitlib-1.28.4-cp312-cp312-macosx_13_0_arm64.whl (2.7 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

eckitlib-1.28.4-cp311-cp311-manylinux_2_28_x86_64.whl (35.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

eckitlib-1.28.4-cp311-cp311-macosx_13_0_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

eckitlib-1.28.4-cp311-cp311-macosx_13_0_arm64.whl (2.7 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

eckitlib-1.28.4-cp310-cp310-manylinux_2_28_x86_64.whl (35.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

eckitlib-1.28.4-cp310-cp310-macosx_13_0_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

eckitlib-1.28.4-cp310-cp310-macosx_13_0_arm64.whl (2.7 MB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

eckitlib-1.28.4-cp39-cp39-manylinux_2_28_x86_64.whl (35.2 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

eckitlib-1.28.4-cp39-cp39-macosx_13_0_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.9macOS 13.0+ x86-64

eckitlib-1.28.4-cp39-cp39-macosx_13_0_arm64.whl (2.7 MB view details)

Uploaded CPython 3.9macOS 13.0+ ARM64

eckitlib-1.28.4-1-cp311-cp311-manylinux_2_28_x86_64.whl (35.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

File details

Details for the file eckitlib-1.28.4-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-1.28.4-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 981bc31610a2466d44dc4cef17bf9b26b243f6c74cbf00ceac47a0b4615612be
MD5 6f4ea790d5ab1e40848aaa5c8c9833df
BLAKE2b-256 da62bb3b0ec2f80f4bbfd6e35ad3add96cdbae2e4cacaa34646db24f1f8f6de5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.28.4-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 49b1bd50fdfc94ab03d6387cc51ff8839f5159b46c84992eda1a4463f597256c
MD5 2c4b1fa46d03cad973b3f8e7d4eee872
BLAKE2b-256 5a79b6345a62327c2597c1e812a84f16954e7e88f9771475aeaa2684a4c61432

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.28.4-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 899bde3975f17f3c3522bc7de3ff7ff1ea177bb802e829b539e011db6e8bce27
MD5 88a6afd98073cc783c12c4537de0c35a
BLAKE2b-256 e035dc1e9ec2fe4b919e091f8efc58731d29bf3e1befd76a7bc1d858ee11e441

See more details on using hashes here.

File details

Details for the file eckitlib-1.28.4-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-1.28.4-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 60bf528bb2062a85392085aa46278b665069618fe635e6691bce0795bc906317
MD5 0f3e33a0318b997d3dbfd712e9dd6558
BLAKE2b-256 845e411de94e4e423f5fd2367e9623a2996719b3bdc89c5b34649bf4dca16863

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.28.4-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 4b32b029ae000b278e9f3df66c10c57bcc76f942e197c132e91d858ef1da1d28
MD5 54e9801521e067d6c560f0194264ab38
BLAKE2b-256 68abc66d7c2bcd50245248e5a9100f8bcb1198061773b4606d25adf5a084a4ce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.28.4-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 889782a7075cf18de2a673811a831101528326980152f8e2eba00a0639296b54
MD5 1c90b3bb3ce1f816bcdea8841243229e
BLAKE2b-256 55c830ce53521a5ccb6508070a0cc9e29d77e26257d35f30923836d08b41ca83

See more details on using hashes here.

File details

Details for the file eckitlib-1.28.4-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-1.28.4-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c04c3ce24b711a6a1ec93fbcc3a6bd8713e6cea5a65462d0077d5593f36f1b7c
MD5 70c84611e6a7ea67f284cf068fca129c
BLAKE2b-256 9ae9fef1c6cc1b1eed8defc5964c253498e464bf1b5f210d6b45da04f17b2918

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.28.4-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 fe50ad6e7342efbe1a4fa663694e1b53d9d504161e32c2188f4134984fe7336b
MD5 dcf805f544477ed17ec72552ea73c00a
BLAKE2b-256 d8b3c5c35db17b9c4a14df011bb83cb38c6db5538c05df659734cb9d1da401fd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.28.4-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 d61522cfedb9dcdfc48e12a1879835ae0b6c1959e1bd2a78dae142418f563f43
MD5 f32226e6529c042428a65a8f7d6e4146
BLAKE2b-256 d4109cd30a0cffe77a877d15404aaf9c3e2e5eb536daf61cd713e7a551dd86bd

See more details on using hashes here.

File details

Details for the file eckitlib-1.28.4-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-1.28.4-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c5a2d68191dd11b26bc0cf7b80c496aa43349556fea1101690b18e7ccbc739e5
MD5 14b33e14a4e5b00265fff38ba81d8c9a
BLAKE2b-256 dca26c2f8ad00cd54e9e7c583decf7fd95572c1a6ee38f54980267fccbd03568

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.28.4-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 6e894ef5e180385c587754d5a8887f37cb9387fac41108b318a508d7f7cc45a8
MD5 aeb158ccd166b000a0bdd37e69078e06
BLAKE2b-256 a34f9c779a1c941473249eeced3e7174ade9aefe5477b3d4f49f7d672ee90483

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.28.4-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 4d381a3de74457e3b40151e34c77ae1b108a1609d3a0b819800c8a8219289054
MD5 0f0edaecd4d4b53ebc1aeef892173f0f
BLAKE2b-256 2981d89a2d8e229554943262e8b4f7b99dabcdf576d6b54604915bfa0d99e19b

See more details on using hashes here.

File details

Details for the file eckitlib-1.28.4-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-1.28.4-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 590508a8fff4400e55a5202f3d253cc2ffea018df9993f03eb241715cb2b7568
MD5 3df8323dc5958230d77f4e9858e54281
BLAKE2b-256 a7167d98c7012c7311728d0292c77a701e902c0ec3431409dd73900307a619f7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.28.4-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 ace57471ebccb79f820cfce6117d75ce96bb95b2919f0b77646eee1fd5a79852
MD5 7d9283b98794cc536a3370ae1b612afb
BLAKE2b-256 16a7561449186f51b4ad474f4f3ee1ca4b36b79b01cb489f05b16c7bdcececfc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.28.4-cp39-cp39-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 ec4f23af0e60eb98c3415497d6f2419ba3144500c886eeb378bf5563bb200b73
MD5 feb087fe47674d2d7c98cb4b5d093f2e
BLAKE2b-256 d327b28d88f92efe3a8ce897481249ef37169b1ad5e5acb6e27026cb1f6cd2c5

See more details on using hashes here.

File details

Details for the file eckitlib-1.28.4-1-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-1.28.4-1-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d23b42d8cbd14730fd168bfeda516eaf5002b6e1f8659f227e35ffea99185dc6
MD5 88cdce2283d916191cd4a0a72d0d878a
BLAKE2b-256 593ef537ebfb9da2b01303d21051d97cbb91d09179c3690c2f0ec4e126b2c48e

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