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

Uploaded CPython 3.13macOS 13.0+ x86-64

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

Uploaded CPython 3.13macOS 13.0+ ARM64

eckitlib-1.31.2-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.2-cp312-cp312-macosx_13_0_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

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

Uploaded CPython 3.12macOS 13.0+ ARM64

eckitlib-1.31.2-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.2-cp311-cp311-macosx_13_0_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

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

Uploaded CPython 3.11macOS 13.0+ ARM64

eckitlib-1.31.2-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.2-cp310-cp310-macosx_13_0_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

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

Uploaded CPython 3.10macOS 13.0+ ARM64

eckitlib-1.31.2-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.2-cp39-cp39-macosx_13_0_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.9macOS 13.0+ x86-64

eckitlib-1.31.2-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.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-1.31.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fdacb4bcc937022c01a430cacec54fdaceefd87dc55c3186e80f1097cbe3af60
MD5 a54a5149e65067018b5675d52c1c1c04
BLAKE2b-256 5c19ec3870e7bc3aab291dad2afe196227a1d35df50e9a6ebecde33ec5e166d4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.2-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 551aa59112e7b247aa5b75cff2480bc1462dbc235644c2cdfadc71fb232c0cad
MD5 c634d5dc139c772bde35150cfec0b107
BLAKE2b-256 c77d453538856c89ef49b7b76cd6573147a0e8e2e32faf461a2170f1ea3b7179

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.2-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 2751bc03600733215165c5332f0bc55cc6b9a2e1715d590313553c03debb3666
MD5 55236e1d46c75c307d73b52a6850a107
BLAKE2b-256 513b9bd636c2bfc443ccbd1732172cd94f32af2fc81e7521972aea1b876517bb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 28004f809c22f0debffb50f3a24adadfb5dca0b9cc0e82400c0d6d144093a4b5
MD5 5613352d4b593ed22aba49c2e227c5c7
BLAKE2b-256 ccfcdfa9cd80f8b2f4fca276b8240a7cf00ad44a477cc1d8041b15c79b1a9b82

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.2-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 b92592ed62fa36b68e7fff2c33bff5df2e9bc0fbe0ab7158ce43fa2d7ac8f6ce
MD5 75b4f67b998530e2901b1973143b87a5
BLAKE2b-256 683193b6377210ab767c2381ec77f7c6569b968ce33f5a38e95b8c2de2ca393a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.2-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 0444e5af6a949211a2c165a8017cb99ee34d703b08a1fc217302d185f4d521d8
MD5 9cfe2407d6d200925228dc746e346758
BLAKE2b-256 4a94a3d2976eb28de80fb1a74e5f61be44ee84e6f3928e1d129d49a58cc2ed96

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 594f66a700af5112088b088eb14fee22b3050d75025465a03ed7ca0902f32ba3
MD5 540155988aaf099c73bba6fd16fbd9e3
BLAKE2b-256 72f3a394d104696f8b5c4744e3529f8c00ecc47a448a55600bf7db6dd5f147ea

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.2-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 f027f7660950cadc7f0ef2772875b3672327ef2e34bb91382491823a6caa8c32
MD5 e9aa6eccb08b088b440fa47e605a5475
BLAKE2b-256 6221b0f18ee87073a49a9e7f602d33e4d5b168b6f22f93c8fe81d888f64379f7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.2-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 24ba7d38c488b0909226ee4f0edd5a09db98931ca36f7d7f5b418fe979bb5385
MD5 33bcbbc500a902ce84d241266c331f46
BLAKE2b-256 2918c827909c86730a7ff55f754f837fd502898fd38ddf0db02bdb8b80a19bb7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.2-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5e1cd470b62db99d989c9e68875516587410df6f7637cff94c19f484c3547926
MD5 e85ea1547ffdb22aa39f6a11f1cb097c
BLAKE2b-256 29ba05f8bb1e53afbb7b12777f3f4e01df3e46926d8fda0eba451b6b13306166

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.2-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 a7ca2cee191ae2ab445ca0b6c61dbd3ae9f8b06c924de6768e2d5f2d88dc17d6
MD5 cdd147dc8a68c3a190dc80c9b484e69c
BLAKE2b-256 16fa9cf2d334fb2cc4f9fff682b4b9afe75e49f35bdd2ef25feaa4e50a6339d1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.2-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 2a17cbb79ea24635c94aa2d961489ccd1f8291f92db2fde5a6c2b3f874bf3953
MD5 0ac696c476e94789a127f8fd150be72a
BLAKE2b-256 abc6f60937e60ed8c3cc644d6b0464fbc7a6c0a3ce1db35608215f3058cd2586

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.2-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6eba3d3bb2ac388e0e6bbfc7033877c0bbf78a050f05472d5648c818333ec698
MD5 7d0ae843d96da9119b99d63357f1d4d1
BLAKE2b-256 29c9447806ab92c49115bebe856862360d83525a864bcc91e5c4c185b4e60d20

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.2-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 213e8a8097494afb0c46eefadb566bbafa3c65a0ca697efe30729ddaa084edf2
MD5 7763b93436b189147aa3f1ad98b504ec
BLAKE2b-256 3ad16e312b08407bcf8be3f558a6027c87399487c6b29faa9a13fd5504cda590

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.2-cp39-cp39-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 345a7bf5d1869c7cac964ccdf963a543dcbf6374297f6ee24957980b837908d2
MD5 8604450a3d9944332d16f3f0fb256e33
BLAKE2b-256 050015fd43420eeefe9339f72e299bf5ef5c1c40fb99257c6b7aca2b1c814d28

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