A quantum chemistry application used for the symbolic derivation and manipulation of equations based on second quantization.
In order to build lizard, your system will have to meet the following requirements:
- An ISO-Cpp17 conform C++ compiler (+ the corresponding standard library)
- JRE (Java Runtime Environment) v11 or more recent, e.g. OpenJDK or Oracle Java
- cmake v3.18 or more recent
All other dependencies will be fetched automatically while running cmake (requires an active internet connection). These dependencies are
- cmake-compiler-flags (BSD-3-Clause)
- antlr4 (BSD-3-Clause)
- GoogleTest (BSD-3-Clause)
- CLI11 (BSD-3-Clause)
- fmt (MIT)
- spdlog (MIT)
- Hedley (CC0-1.0)
- iterators (BSD-3-Clause)
- libPerm (BSD-3-Clause)
- span_lite (BSL 1.0)
- Eigen3 (MPL 2.0)
From the root of the source tree, execute the following commands:
mkdir buildcd buildcmake ..(potentially with desired arguments, see below)cmake --build .
The built libraries can be found in build/lib/ whereas all executables can be found in build/bin/.
In order to execute the built test cases, enter the build directory and execute ctest --output-on-failure.
Build options have to be passed to cmake, when invoking it. They are passed in the form of -D<option>=<value>. Thus, a cmake invocation with options
might look like this: cmake -DCMAKE_BUILD_TYPE="Release" -DLIZARD_LTO=ON ..
| Option | Description | Default |
|---|---|---|
CMAKE_BUILD_TYPE |
The type of the build. Most common choices are either Debug or Release |
Release |
LIZARD_LTO |
Whether to enable link time optimization (LTO) in Release builds |
ON, if supported |
LIZARD_BUILD_TESTS |
Whether to build test cases | ON |
LIZARD_DISABLE_WARNINGS |
Whether to disable all warnings related to libPerm source files |
OFF |
LIZARD_WARNINGS_AS_ERRORS |
Whether to treat compiler warnings as errors | OFF |
LIZARD_IWYU |
Enable the include-what-you-use tool, if installed | ON |
LIZARD_LWYU |
Enable cmake's link-what-you-use tool, if available | ON |
LIZARD_CLANG_TIDY |
Enable clang-tidy static analysis, if installed | ON |
LIZARD_DEPENDENCIES_BUILD_TYPE |
The build type to use for lizard's dependencies | Release |