Boost.Program_options alternatives and similar libraries
Based on the "CLI" category.
Alternatively, view Boost.Program_options alternatives based on common mentions on social networks and blogs.
-
jarro2783/cxxopts
Lightweight C++ command line option parser -
gflags
The gflags package contains a C++ library that implements commandline flags processing. It includes built-in support for standard types such as string and the ability to define flags in the source file in which they are used. Online documentation available at: -
CLI11
CLI11 is a command line parser for C++11 and beyond that provides a rich feature set with a simple and intuitive interface. -
rang
A Minimal, Header only Modern c++ library for terminal goodies 💄✨ -
args
A simple header-only C++ argument parser library. Supposed to be flexible and powerful, and attempts to be compatible with the functionality of the Python standard argparse library (though not necessarily the API). -
Taywee/args
A simple header-only C++ argument parser library. Supposed to be flexible and powerful, and attempts to be compatible with the functionality of the Python standard argparse library (though not necessarily the API). -
clipp
easy to use, powerful & expressive command line argument parsing for modern C++ / single header / usage & doc generation -
TCLAP
A mature, stable and feature-rich library for defining and accessing command line arguments in ANSI C++. [MIT]
Write Clean C++ Code. Always.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Boost.Program_options or a related project?
README
Program Options, part of the collection of Boost C++ Libraries, allows for definition and acquisition of (name, value) pairs from the user via conventional methods such as command line and config file. It is roughly analogous to getopt_long, but for use with C++.
License
Distributed under the Boost Software License, Version 1.0.
Properties
- C++03
- Requires Linking
Build Status
(in progress...)
Branch | Travis | Appveyor | codecov.io | Deps | Docs | Tests |
---|---|---|---|---|---|---|
master |
||||||
develop |
Directories
Name | Purpose |
---|---|
build |
build script for link library |
ci |
continuous integration scripts |
doc |
documentation |
example |
use case examples |
include |
headers |
src |
source code for link library |
test |
unit tests |
More information
- Ask questions: Be sure to read the documentation first to see if it answers your question.
- Report bugs: Be sure to mention Boost version, platform and compiler you're using. A small compilable code sample to reproduce the problem is always good as well.
- Submit Pull Requests against the develop branch. Note that by submitting patches you agree to license your modifications under the Boost Software License, Version 1.0. Be sure to include tests proving your changes work properly.
- Discussions about the library are held on the Boost developers mailing list. Be sure to read the discussion policy before posting and add the
[program_options]
tag at the beginning of the subject line.
*Note that all licence references and agreements mentioned in the Boost.Program_options README section above
are relevant to that project's source code only.