msys2 是讓程式碼能移植到 Windows 上面, 所以一般會在 msys2 上面建立完整的編譯環境, 然後編譯出 Windows Native Application; cygwin 則是在 Windows 上面建立 Linux 虛擬環境, 然後執行在這上面執行 Linux 的各種指令