GFlags

Installation in Ubuntu

sudo apt install libgflags-dev

Usage in CMake

# gflags
find_package(GFlags REQUIRED)  # gflags-config.cmake available
include_directories(${GFLAGS_INCLUDE_DIR}) # not DIRS

add_executable (main src/main.cpp)
target_link_libraries (main ${GFLAGS_LIBRARIES})

Tutorial

  • All DEFINE macros take the same three arguments: the name of the flag, its default value, and a 'help' string that describes its use. The 'help' string is displayed when the user runs the application with the --help flag.

#include <gflags/gflags.h>
DEFINE_string(config, "./config/default.yaml", "config file path");
int main(int argc, char **argv) {
    google::ParseCommandLineFlags(&argc, &argv, true);
    myslam::VisualOdometry::Ptr vo(new myslam::VisualOdometry(FLAGS_config));
    ...
}

// in visual_odometry.h
VisualOdometry(std::string &config_path);

Last updated