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

Uploaded CPython 3.13macOS 13.0+ x86-64

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

Uploaded CPython 3.13macOS 13.0+ ARM64

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

Uploaded CPython 3.12macOS 13.0+ x86-64

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

Uploaded CPython 3.12macOS 13.0+ ARM64

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

Uploaded CPython 3.11macOS 13.0+ x86-64

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

Uploaded CPython 3.11macOS 13.0+ ARM64

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

Uploaded CPython 3.10macOS 13.0+ x86-64

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

Uploaded CPython 3.10macOS 13.0+ ARM64

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

Uploaded CPython 3.9macOS 13.0+ x86-64

eckitlib-1.31.4-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.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eckitlib-1.31.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 57a2943cf5e0c51489f8a47383a0838ed88039eacd02cc251618b71acd7ca612
MD5 2136c2f96fc8fede9929b8b8f51579b9
BLAKE2b-256 66206fcbcb74dd6b6832bd5a08ee0db7f35ca0cdfc901047052959bfb27fbc9e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.4-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 500f44074dc0c0cfb27f7b57c2b05ec52878c4f2410ec5927c7209652bc8654f
MD5 bd707b016aef2ef209c97dae3ae963f2
BLAKE2b-256 1de5963843d9d8550de5fbd18beb715b8355bd74631e9c20d85981ea1a0c8e59

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.4-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 d0a5ece7e9bf88996c2992c3eeec27bf47a7ce67dfd788b568e75a89d76977c3
MD5 e1bd45bcad9aec27d0e77802da3dccd0
BLAKE2b-256 09b4ca9f5f4927e6aa515981c28582a3215ece22bb80ec622f735f12ba1cbe17

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 023236f55380f1c9f7bc0ce9a8af417751d67cc6d7789636a29710fe8857a452
MD5 c41c30a862b984d25a63b3108fdcddac
BLAKE2b-256 ed73e905759651bf96732d8aa95f67837e89169998623816466ebe029e0d167d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.4-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 28f312d8ff9f7f57942ff70011f14db0a1a03ef34992640b914be84d7d836a04
MD5 a5343ed2f1752cef038c9987e3bcc755
BLAKE2b-256 109213d29a9b5aa7cecc6e4c6bc7abcb51c99b66b2223b55ce0d2474a42415d4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.4-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 045402e6738bb6f95aa23007c625df3e80d29e2bd59c5f4312569ecba82cc400
MD5 ac041691c5e767a6292ef0cfc2131a74
BLAKE2b-256 00da497c186156aa26c5d7bfeb179c360835d71ba944a8e3ba57141d24fa07cf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c8ae1b5f98b1d58a126bbd2168fea453a06729865f5825c904f7f3763e579f44
MD5 8f478d1a4d4df8b9b89f27e8aceae247
BLAKE2b-256 28bee364775b460a4ee49dc785441c06dab071676dd7446651d45cff530169a3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.4-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 7e2eb32c02ed7d546f9d212e13c8ec073d8b096ff1e829d22ea19c0f6862524c
MD5 e8f181adca2cd7ffdde0062acc0905f7
BLAKE2b-256 5a6311f6610bbf171154b027e91a931c7f4d92ba9f105f1d64a9c3f1c0bd3032

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.4-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 636824c14f583e21c84263784afedf30ed15a68086f1eff192c5504fbbd67896
MD5 42ab0d85a7f998fc640db1082001044f
BLAKE2b-256 d4fe436a6f0229c96f11ac0f428f0f1e6977ffa9a76a2f80a2094b3db4abe5ef

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.4-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cd2d8da47b2c048c42785c9a3b018ba0ccaacaa2a07543f3d143400da3ca3a26
MD5 4a8ad8c3a68a51a578463911c5faf66d
BLAKE2b-256 7311d9a1969e12e2ddd9b1211f31159b47eff008e165f7e923ecc12156c3a193

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.4-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 c2627a2188394b903bee512583df50a4d09b8e7b97357a50a34296108ea494cb
MD5 70eadc7b9601ea62763858e772f04dc5
BLAKE2b-256 35167d96db94b9373684c80549c657460a3d11d8bffa621fba7e4379adbbf2da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.4-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 b1c5539d1fec18db839ad4b29e9ac5212155819b5cdf3feaeb06d3489f5f5a2b
MD5 06b1ce47b07e1dc6931b9e97a487ddc8
BLAKE2b-256 238586c03bc7367fa3a0c8758ce964128c3d22befb119c8ee3798e75886e2035

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.4-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9f769c149647753eed5bd92c6efd6c255fa5841a00595056b08f09fda3c2ca27
MD5 71eb7e08c1b7f2765c55cd85675e4040
BLAKE2b-256 d78f8ed51e3ce90d3b81cebf420e23e428f68bc12f9a18832da32c7325e1d50f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.4-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 c107ee0c09cb222cfcecbba7ccc3b59b632ecc02f63cb66864193fca8e936945
MD5 7d966a88cd4b27eefe7646d81a55743d
BLAKE2b-256 ee1106e6a66c10f93c0f322ec47336d929c7a235ffe0601dd63ecac750f4a5ed

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for eckitlib-1.31.4-cp39-cp39-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 8f7de105a39f4c85f9f5165044d58222a469dd7e05753e91177f6983fe45c5e8
MD5 21ef322b6c512963c31028fa2545a97b
BLAKE2b-256 b1435234f91c2e662eaf0f2dfc1bd877ff2df3c1b0c733f653f4304824624c30

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