openE57

openE57

openE57 is a forked version of the original LibE57 (http://www.libe57.org) project, with the intent to refine and optimize the source code in a modern C++ idiomatic way and remove unnecessary dependencies (e.g. Boost) in favour of the C++ Standard Library.

The library is compiled as C++17, since some of following language intrinsics and libraries are used:

  • constexpr values
  • enum classes
  • filesystem (replaces boost::filesystem)
  • thread (replaces boost::thread)
  • memory (replaces boost::shared_ptr and std::auto_ptr)

Requirements

You need the following tools to build this library:

  • A C++17 compiler (MSVC 2017+, gcc 7+, clang 7+)
  • A recent version of CMake (3.15+)
  • A recent version of conan (1.25+)

How to build it

On Linux:

git clone https://github.com/madduci/openE57.git
cd open57
mkdir -p build/linux && cd build/linux
conan install ../.. --build=missing
cmake ../.. -DCMAKE_BUILD_TYPE=Release
cmake --build .
cmake --install . 

On Windows:

git clone https://github.com/madduci/openE57.git
cd open57
md build\windows && cd build\windows
conan install ..\.. --build=missing
cmake ..\.. -DCMAKE_BUILD_TYPE=Release
cmake --build . --config Release
cmake --install . --config Release

Available CMake options (but disabled by default) are the following onews:

  • BUILD_EXAMPLES
  • BUILD_TOOLS
  • BUILD_TESTS
  • BUILD_WITH_MT (MSVC Only)
  • BUILD_SHARED_LIBS (Not supported at the moment - no symbol is exported yet)

The dependencies are now managed with conan and integrated in CMake, without the need of compiling the required libraries by yourself.

Description
Fork of original project libE57 (https://www.libe57.org)
Readme MIT 9.6 MiB
Languages
C++ 98.2%
CMake 1.4%
Python 0.4%