make is a GNU command, so the only way you can get it on Windows is installing a Windows version like the one provided by GNUWin32. Anyway, there are several options for getting that:

  1. Directly download from Make for Windows

  2. Using Chocolatey. First, you need to install this package manager. Once installed, you simply need to install make (you may need to run it in an elevated/administrator command prompt):

    choco install make
    
  3. Another recommended option is installing a Windows Subsystem for Linux (WSL or WSL 2), so you'll have a Linux distribution of your choice embedded in Windows 10, where you'll be able to install make, gcc, and all the tools you need to build C programs.

  4. For older Windows versions (Microsoft Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, or Windows 7 with msvcrt.dll) you can use GnuWin32.

An outdated alternative was MinGW, but the project seems to be abandoned, so it's better to go for one of the previous choices.

Answer from Eduardo Yáñez Parareda on Stack Overflow
🌐
SourceForge
gnuwin32.sourceforge.net › packages › make.htm
make for Windows
You can also download the files from the GnuWin32 files page. You can monitor new releases of the port of this package. ... Requirements for running applications, excluding external ones such as msvcrt.dll, perl, etc, are included in the Setup program and the dependencies zip file. Win32, i.e. MS-Windows 95 / 98 / ME / NT / 2000 / XP / 2003 with msvcrt.dll and msvcp60.dll.
Discussions

makefile - How to use GNU Make on Windows? - Stack Overflow
I installed MinGW and MSYS, added C:\MinGW\bin to PATH but I still can't run Makefile on Windows' cmd. I would like to run cmd.exe and there type, for example, make all but my cmd says that there i... More on stackoverflow.com
🌐 stackoverflow.com
How difficult is to write the "make" software?
GNU Make supports Windows and can be compiled to a simple make.exe. I distribute such a build in w64devkit , and you can pluck out the 220kB make.exe and use it on its own. pdpmake is a recent, simple POSIX make implementation in about 3kLOC, though it doesn't currently support Windows. It's an approachable code base if you wanted to study a make. More on reddit.com
🌐 r/C_Programming
13
1
August 17, 2022
make equivalent for windows?
Is there a make alternative, so we can use that for Windows users? There are lots of ways to use actual GNU make on Windows They can just use WSL, that's not really a problem? If they want to use Windows specifically, then they can use Mingw / MSYS2, or Cygwin. Cygwin is the easiest to get into, simply because it has sensible webpags that make sense to read, but is the least Windows-native. Mingw and MSYS2 are very confusing because they're forks of forks of forks, their webpages are nonsensical, and they have confusing things like ming32-make vs make . However it's what I used to use before WSL2 arrived. Alternatively you can use Microsoft's nmake and hope it's compatible with your files, but that's usually a recipe for disaster. More on reddit.com
🌐 r/AskProgramming
11
18
November 16, 2021
Makefile example project for Windows with source, include, libs and build folders. Also with a detailed explanation!
Unfortunately it's uncommon, but if your Makefile relies on cmd.exe then you ought to indicate so in the Makefile: SHELL = cmd Otherwise, if there's a sh.exe in the PATH then GNU Make will prefer it over cmd.exe and the Makefile won't work correctly. When I run into this situation I'll give the hint in the make command: make SHELL=cmd SHELL is a special case and ignores the environment variable, so this is the only way to override it outside the Makefile. Better for your Makefile intentions to be clear and explicit than to rely on users to figure this out when they get weird errors. (They usually won't.) IHMO, even better is to just use POSIX sh in your Makefile and simply make it a build requirement. It's easy to obtain a reasonable sh even on Windows (Cygwin, MSYS2, busybox-w32 ), and to further support exactly this I include sh alongside make in my development kit distribution . This uniformity lets me hit all operating systems with the same Makefile. I use EXE from the environment to determine the binary file extension, if any. CFLAGS = -Wall -Wextra -Os LDFLAGS = LDLIBS = program$(EXE): main.o foo.o $(CC) $(CFLAGS) $(LDFLAGS) -o $@ main.o foo.o $(LDLIBS) clean: rm -f program$(EXE) main.o foo.o main.o: main.c main.h foo.h foo.o: foo.c foo.h Outside of Windows it Just Works. On Windows: set EXE=.exe make Or if I'm cross-compiling: make EXE=.exe CC=x86_64-w64-mingw32-gcc More on reddit.com
🌐 r/C_Programming
25
35
May 22, 2022
🌐
GNU
gnu.org › software › make
Make - GNU Project - Free Software Foundation
Make uses the makefile to figure out which target files ought to be brought up to date, and then determines which of them actually need to be updated. If a target file is newer than all of its dependencies, then it is already up to date, and it does not need to be regenerated. The other target files do need to be updated, but in the right order: each target file must be regenerated before it is used in regenerating other targets. GNU ...
Find elsewhere
🌐
PäksTech
pakstech.com › blog › make-windows
Use Make on Windows | PäksTech
July 24, 2021 - The easiest way to configure Make ... for Windows. It will handle downloading the correct executable, installing it, and making sure that the command is added to the system path. Install Chocolatey if you don’t already have it installed ... >> make --version GNU Make 4.3 Built ...
🌐
GitHub
github.com › maweil › CompileMakeForWindows
GitHub - maweil/CompileMakeForWindows: Inofficial build process of GNU Make for Windows (x86_64) · GitHub
Inofficial build process of GNU Make for Windows (x86_64) - maweil/CompileMakeForWindows
Starred by 20 users
Forked by 9 users
Languages   Shell 89.5% | Dockerfile 10.5%
🌐
Shells
kb.shells.com › tutorials › Windows_11 › GNU_Make
GNU Make on Windows 11 - Shells KB
Step-by-step guide to install GNU Make on Windows 11. Complete tutorial with commands and configuration.
🌐
O'Reilly
oreilly.com › library › view › learn-webassembly › 9781788997379 › d7c68ff9-ce2e-43d7-ba8a-86e1b5d088d5.xhtml
Installing GNU make on Windows - Learn WebAssembly [Book]
September 25, 2018 - Installing GNU make on Windows You can install GNU make on Windows using Chocolatey. Open up Command Prompt or PowerShell and run the following command: choco install make You may... - Selection from Learn WebAssembly [Book]
Author   Mike Rourke
Published   2018
Pages   328
🌐
Earthly
earthly.dev › blog › makefiles-on-windows
How To Use Makefiles on Windows - Earthly Blog
July 11, 2023 - At this point, you can use make just like you otherwise would, and you can test it by running make -v. Historically, one of the most popular ways of running any type of Linux functionality on Windows has been to use Cygwin. Cygwin aims to give a Linux feeling to Windows by holding a large collection of GNU and open source tools.
🌐
Chocolatey
community.chocolatey.org › packages › make
Chocolatey Software | GNU make 4.4.1
Chocolatey is software management automation for Windows that wraps installers, executables, zips, and scripts into compiled packages. Chocolatey integrates w/SCCM, Puppet, Chef, etc.
🌐
GitHub
github.com › mbuilov › gnumake-windows › blob › master › make-4.4.1-build.txt
gnumake-windows/make-4.4.1-build.txt at master · mbuilov/gnumake-windows
Instructions for building native gnumake.exe for Windows · · From cygwin or other unix shell in this directory: · 1) get archive: wget http://ftp.gnu.org/gnu/make/make-4.4.1.tar.gz · 2) unpack archive: tar xf make-4.4.1.tar.gz · 3) go to sources: cd make-4.4.1 ·
Author   mbuilov
🌐
Steve
steve.fi › software › make
GNU make for Windows
If you haven't heard of it before I recommend you read the GNU Make Manual. ... If, when using make, you receive the error messasge 'CreateProcess( "" .. blah, blah) failed' then you should add the following to the top of your Makefile: ... Note: I offer no support for this program. You might prefer a more recent version of Make available from the unix-utils collection project. If you're looking for more Unix tools for Microsoft Windows please see the following local links:
🌐
Microsoft
winget.run › pkg › GnuWin32 › Make
Download and install GnuWin32: Make with winget
winget install -e --id GnuWin32.Make · Make is a tool which controls the generation of executables and other non-source files of a program from the program's source files. Make gets its knowledge of how to build your program from a file called the makefile, which lists each of the non-source ...
🌐
Reeeliance
s2v.reeeliance.com › run make on windows
Run Make on Windows | Stream2Vault - reeeliance
This guide explains how to install GNU Make on Windows using the GnuWin32 package. This method is useful if you prefer not to use package managers like Chocolatey or Scoop, or if they are not available in your environment.
🌐
Medium
medium.com › @samsorrahman › how-to-run-a-makefile-in-windows-b4d115d7c516
How to Run a Makefile in Windows. Makefile is a special file containing… | by Samsor Rahman | Medium
September 22, 2023 - Next, execute the below-provided command to install make on Windows: >mingw-get install mingw32-make · Step 5: Verify make Installation · Verify the make command installation by checking its version: >mingw32-make — version · We have successfully installed GNU Make “3.82.90” on Windows: You can see that we are using the “mingw32-make” command instead of “make”. Let’s move ahead to fix it.
🌐
GNU Make
make.mad-scientist.net
GNU Make | A Program for Directing Recompilation
GNU Make is extremely portable and should be simple to compile for any supported system (you do need a C compiler, though). In general, pre-compiled versions aren’t available. Eli Zaretskii makes pre-compiled Windows versions availabe; try https://sourceforge.net/projects/ezwinports/files/?source=navbar and search for the make-....zip files.