A C/C++ library with useful classes (used by NavDB)
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib_c
lib_cpp
scripts
test_c
test_cpp
third_party/dirent-1.23.2
LICENSE
README.md

README.md

libnav

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:

  1. A linked list class.
  2. String utilities.
  3. A logger.
  4. Filesystem and file classes.
  5. Date/time and timer class.
  6. Authentication classes (mainly SCRAM authentication).
  7. A Networking utilities class.

Requirements:

  1. Build and install jemalloc (from jemalloc.net).
  2. Install OpenSSL (on Linux the apt-get package name is libssl-dev).

Build scripts:

  1. First source the appropriate OS script (setup_linux.sh, setup_macosx.sh or setup_win64.bat).
  2. To build the C++ library run build-cpp.sh (Linux / Mac OS X) or build-cpp.bat (Windows).
  3. To build the C library run build-c.sh (Linux / Mac OS X) or build-c.bat (Windows).