| Argument Aggregator
|
fixed |
|
|
- convoluted syntax
- hard to build complex CLIs
|
| Argh!
|
arbitrary |
|
|
|
| argparse
|
fixed |
|
|
- C Library
- hard to build complex CLIs
|
| Args
|
flexible |
|
|
- convoluted syntax
- hard to build complex CLIs
|
| Argtable
|
fixed |
|
|
- C Library
- hard to build complex CLIs
- CLI defs are hard to read
|
| Boost Program Options
|
flexible |
|
|
- mature
- supports config files
- C++98-era syntax & technical debt
|
| CLI11
|
fixed |
|
|
- extensive feature set
- supports config files
- complex CLI defs are hard to read
|
|
CLIPP
|
arbitrary |
|
|
- relatively nice-looking, DSL-like syntax
- complex CLIs possible
- error handling could be better
- not very frequently updated
|
| cxxopts
|
fixed |
|
|
- easy to write simple CLIs
- hard to build complex CLIs
|
| DocOpt
|
fixed |
|
|
- great readability of CLI def.
- untyped CLI definition
- clumsy input querying
|
| getopt
|
fixed |
|
|
- C Library
- convoluted syntax
|
| getopt_long
|
fixed |
|
|
- C Library
- convoluted syntax
|
| GFlags
|
fixed |
|
|
|
| TCLAP
|
flexible |
|
|
- convoluted syntax
- hard to build complex CLIs
|
| The Lean Mean C++ Option Parser
|
fixed |
|
|
- truly convoluted syntax
- hard to build complex CLIs
|
Comments…