Cygwin

Git + MinGW will get you some basic command line tools but they're just the most basic tools. If you want to do some serious command line compiling and hacking, cygwin will give you as-close-as-possible-to-Unix like command capabilites

If you need things like yacc, gperf, curses and who knows what else - cygwin is for you!

A kind reader wrote in and suggested https://babun.github.io/ but I haven't had a chance to check it out!

Visit https://cygwin.com/install.html to download the installer, which is also the package manager

Unlike the other software, cygwin is basically installed from online package sources that constantly update

The default install into C:\cygwin is suggested

Select whichever mirror you want, some might not be up but one will work!

There's hundreds of packages you can install into cygwin, chances are you need the basic defaults and maybe a few special ones.

Say you need the compiler tool bison - type bison into the search box and you'll get two possible 'categories' - debug and devel

I just need the developer tool, not the debug info (since im not debugging bison itself) So where it says skip - click that to install it. I rarely need the source code (src) so i just install the binaries (bin)

Cygwin will try to install as many sub-dependencies you need as possible

It will then install all the packages you selected.

And run the Cygwin Terminal to use cygwin's tools. Note you cannot use the plain cmd shell to run cygwin programs

If you need to find your files or go to the Desktop, you can go to your 'windows home directory' with /cygdrive/c/Users/username

If you ever need another package, just re-run the installer. For example, halfway thru this build I realized that gperf was required

Just relaunch the cygwin terminal when done updating

This guide was first published on May 05, 2016. It was last updated on May 05, 2016. This page (Cygwin) was last updated on Sep 16, 2019.