Navigator Data's libnav C++ library contains code from NavDB (https://navdb.io) that has been packaged into a standalone library for general purpose use under the Apache 2.0 license. It also includes a wrapper C library.
Some of the classes provided:
- A linked list class.
- String utilities.
- A logger.
- Filesystem and file classes.
- Date/time and timer class.
- Authentication classes (mainly SCRAM authentication).
- A Networking utilities class.
- Build and install jemalloc (from jemalloc.net).
- Install OpenSSL (on Linux the apt-get package name is libssl-dev).
- First source the appropriate OS script (setup_linux.sh, setup_macosx.sh or setup_win64.bat).
- To build the C++ library run build-cpp.sh (Linux / Mac OS X) or build-cpp.bat (Windows).
- To build the C library run build-c.sh (Linux / Mac OS X) or build-c.bat (Windows).