Do also consider CLI11, this is much closer to the same behaviour as argparse
and allows really complex inputs (if needed). It is also available as a single header. The license looks to be similar to the old VTK license, so there is probably no issues there.
It is very easy to use e.g.
// ...
// Initialise the ArgParameters
ArgParameters ap{true, 3, -45};
CLI::App app{GetProgramName(argv[0]) +
" - testing positional command line options"};
bool r = false;
app.add_flag("-r, --radians", r, "Use radians");
app.add_option("angle", ap.angle, "The angle", true);
app.add_option("dp", ap.dp, "The decimal precision", true);
CLI11_PARSE(app, argc, argv);
ap.degrees &= !r;
// ...