MinGW (Minimalistic GNU for Windows) and MSYS (Mimimal System) are software packages that enable Unix and Linux programs to be built and run on Windows. I rely on them quite a lot and try to ensure that they are installed on any Windows PCs that I use regularly.
However, the installation of these packages is rather complex and I always seem to take me several attempts to get right. First of all, it is not at all obvious from the download page which files you are supposed to download. Then some of them are .exe files and others are .tar.gz's. I suspect that there might be some historical reason behind this, but really, why not just package the whole lot in an .exe file? There can't be many people nowadays who begrudge the few megabytes of disc space that this might waste. Then there is the totally unnecessary fuss over whether you should have the MinGW directory as a subdirectory of the MSYS one or beside it at the top of the C: drive ( I always eventually choose the latter). And finally, there is the almost comical tussle over different versions of the 'make' program as revealed by this message displayed at the end of a sucessful MSYS install: