yuck is a command line option parser for C that works on a minimal set of dependencies - only a C compiler and the m4 macro processor are required. It supports all the standard use cases: GNU-style long options (--option), condensable short options (-xab for -x -a -b), and optional arguments to long and short options (--foo[=BAR]), multiple occurrence of options (-vvv). Most importantly, it does not depend on libc's getopt() nor getopt_long().
The Lean Mean C++ Option Parser handles program arguments (argc, argv). It supports the short and long option formats of getopt(), getopt_long(), and getopt_long_only(), but has a more convenient interface. It is a freestanding, header-only library with no dependencies, not even libc or STL. It comes with a usage message formatter which supports column alignment and line wrapping, making it ideal for localized messages with different lengths.