You don't need all of Cygwin's packages to be able to write, compile, and
debug C++ code on Cygwin, no. You can probably get by with a default
installation plus 'gcc', 'gcc-g++', 'binutils', and 'gdb', depending on
your needs. That, of course, leaves out your favorite Cygwin-supported
editor, among other incidentals (or not so incidentals).
If you get two responses from me each time, it's because I do a "reply-all"
which sends to the list and you. If you read the list, you may find it
more convenient to just get your replies from there. In that case, set
your "reply-to" option to the list and you'll just get one instead. That's
what I do.
Larry