Libraries
Contents
-
Third-party libraries (TPLs)
- The Charm++ Parallel Programming System
- The Parsing Expression Grammar Template Library
- C++ Template Unit Test Framework
- Boost C++ libraries
- The HDF5 data model
- The NetCDF data model
- SEACAS for storing data for finite element analyses
- Zoltan for static load balancing
- PugiXML for XML format reading and writing
- BLAS for basic linear algebra
- LAPACK for linear algebra
- Libstdc++ for standard C++ containers and algorithms
- Libc++ for standard C++ containers and algorithms
- Musl-libc for standard C library
- OpenMPI for the message passing interface
- BackwardCpp for generating backtraces
- HighwayHash for generating hashes
- Brigand for template meta-programming
- Lua for control (configuration) files
- Sol2 for binding Lua and C++
- ExaM2M for mesh-to-mesh solution transfer
- Compilers
-
Tools
- Doxygen for design, theory, and software API documentation
- CMake as a build system
- Ninja for building
- Gold for linking
- Gcov for test coverage analysis
- FastCov for test coverage analysis report
- Git for source code version control
- Numdiff for comparison of text files with numerical content
- M.CSS for improving on Doxygen output
- TeamCity for continuous integration
- Docker for containers and testing
This page collects links to full verbatim texts of the licenses of all third-party libraries (TPLs), and the list of compilers and tools used by Quinoa.
An important distinction between Third-party libraries (TPLs) and Tools is that TPLs are libraries whose source we directly use, e.g., via include files and/or (dynamic) linking, while from a tool we do not include source code nor link its object files, only build it and use it as a separate (external) executable.
Third-party libraries (TPLs)
The Charm++ Parallel Programming System
- Required
- Searched for and if not found, built by default
- Web: http:/
/ charm.cs.illinois.edu - License: Charm++/Converse license
The Parsing Expression Grammar Template Library
- Required
- Searched for and if not found, built by default
- Web: https:/
/ github.com/ taocpp/ PEGTL - License: PEGTL license
C++ Template Unit Test Framework
- Required
- Searched for and if not found, built by default
- Web: http:/
/ mrzechonek.github.io/ tut-framework - License: TUT license
Boost C++ libraries
- Required
- Searched for and if not found, built by default
- Web: http:/
/ www.boost.org - License: Boost license
The HDF5 data model
- Required
- Searched for and if not found, built by default
- Web: http:/
/ www.hdfgroup.org/ HDF5 - License: HDF5 license
The NetCDF data model
- Required
- Searched for and if not found, built by default
- Web: http:/
/ www.unidata.ucar.edu/ downloads/ netcdf/ index.jsp - License: NetCDF license
SEACAS for storing data for finite element analyses
- Required
- Searched for and if not found, built by default
- Web: https:/
/ github.com/ trilinos/ Trilinos/ tree/ master/ packages/ seacas - License: SEACAS license
Zoltan for static load balancing
- Required
- Searched for and if not found, built by default
- Web: http:/
/ www.cs.sandia.gov/ Zoltan/ Zoltan.html - License: Zoltan license
PugiXML for XML format reading and writing
- Required
- Searched for and if not found, built by default
- Web: http:/
/ pugixml.org/ - License: pugixml license
BLAS for basic linear algebra
- Required
- Searched for and if not found, built by default
- Web: http:/
/ www.netlib.org/ blas - License: BLAS license
LAPACK for linear algebra
- Required
- Searched for and if not found, built by default
- Web: http:/
/ www.netlib.org/ lapack - License: LAPACK license
Libstdc++ for standard C++ containers and algorithms
- Either libc++ or libstdc++ required
- Must be present system-wide
- Web: https:/
/ gcc.gnu.org/ libstdc++ - License: LibStdC++ license
Libc++ for standard C++ containers and algorithms
- Either libc++ or libstdc++ required
- Must be present system-wide
- Web: http:/
/ libcxx.llvm.org - License: LibC++ license
Musl-libc for standard C library
- Optional
- Must be present system-wide
- Web: https:/
/ www.musl-libc.org - License: Musllibc license
OpenMPI for the message passing interface
- Required
- Must be present system-wide
- Web: http:/
/ www.open-mpi.org - License: OpenMPI license
BackwardCpp for generating backtraces
- Optional
- Searched for and if not found, built by default
- Web: https:/
/ github.com/ bombela/ backward-cpp - License: BackwardCpp license
- Possible dependencies of BackWardCpp and their licenses:
- GNU/
binuitls (GPL) - elfutils (GPLv2+/LGPLv3+)
- libdwarf (BSD/LGPLv2/GPLv2)
- libelf (LGPL)
- GNU/
HighwayHash for generating hashes
- Required
- Searched for and if not found, built by default
- Web: https:/
/ github.com/ google/ highwayhash - License: HighwayHash license
Brigand for template meta-programming
- Required
- Searched for and if not found, built by default
- Web: https:/
/ github.com/ edouarda/ brigand - License: Brigand license
Lua for control (configuration) files
- Required
- Searched for by default and must be present system-wide
- Web: https:/
/ www.lua.org/ - License: Lua license
Sol2 for binding Lua and C++
- Required
- Built by default
- Web: http:/
/ sol2.rtfd.io - License: Sol2 license
ExaM2M for mesh-to-mesh solution transfer
- Optional
- Not searched for by default
- Web: https:/
/ github.com/ Charmworks/ ExaM2M.git - License: ExaM2M license
Compilers
Clang C++ compiler
- Web: http:/
/ llvm.org
GNU C++ compiler
- Web: https:/
/ gcc.gnu.org
Tools
Doxygen for design, theory, and software API documentation
CMake as a build system
- Web: http:/
/ www.cmake.org
Ninja for building
Gold for linking
Gcov for test coverage analysis
FastCov for test coverage analysis report
Git for source code version control
- Web: https:/
/ git-scm.com