¿Cómo usar GNU Make en Windows?

95

He instalado MinGW y MSYS, añadido C:\MinGW\bina PATH, pero todavía no se puede ejecutar en Windows Makefile cmd. Me gustaría ejecutar cmd.exe y escribir allí, por ejemplo, make allpero mi cmd dice que no existe tal comando.

¿Qué tengo que hacer? No quiero usar el shell MSYS, ese no es el punto. ¿Alguna idea de cómo usar GNU Make en Windows cmd ya que puedo hacerlo en Ubuntu? No estoy interesado en Cygwin.

yak
fuente
1
Tendrá que agregarlo a PATH en variables de entorno en la configuración de su sistema.
slugonamission
@slugonamission: ya lo hice, escribí :)
yak
¿Ejecuta make.exe en lugar de make?
slugonamission
2
@slugonamission: ¡Lo hice! He añadido C:\MinGW\msys\1.0\bina PATH, y funcionó! : D Pero todavía tengo problema, makeme muestra: pastie.org/private/ixaaqbq2xl3geyg0emnow
yak
1
En su alldestino, hello.exe debe estar en la misma línea allpara que se considere una dependencia del destino. Si no, se convierte en parte de la tarea all.
slugonamission

Respuestas:

101

Así es como lo hice funcionar:

  copy c:\MinGW\bin\mingw32-make.exe c:\MinGW\bin\make.exe

Entonces puedo abrir un símbolo del sistema y escribir make:

  C:\Users\Dell>make
  make: *** No targets specified and no makefile found.  Stop.

¡Lo que significa que está funcionando ahora!

usuario1594322
fuente
10
@Imray En caso de que aún no esté completamente claro: la marca se distribuye en un archivo mingw32-make.exe. Dado que el directorio c:\MinGW\binestá en la ruta del sistema, puede usarlo mingw32-makecomo comando o copiar (una versión más segura del cambio de nombre) mingw32-make.exea just make.exe.
Tomáš Zato - Reincorpora a Monica
1
Debería evitar hacer que msys o mingw formen parte de las variables de su entorno por razones importantes, pero también porque el directorio msys es local para sí mismo. La ruta en msys le permitirá usar make si está en el contenedor de mingw64, sin embargo, no habla sobre este problema. Además, sin hablar del problema, debe crear un enlace DURO a mingw32-make.exe como make.exe, hace la vida más fácil y no tiene que clonar el exe. Prueba:mklink /H C:\MinGW\bin\mingw32-make.exe C:\MinGW\bin\make.exe
user2262111
9

Estoy usando GNU Make del proyecto GnuWin32, consulte http://gnuwin32.sourceforge.net/ pero no ha habido actualizaciones desde hace un tiempo, así que no estoy seguro del estado de este proyecto.

Colin 't Hart
fuente
6

Aunque esta pregunta es antigua, muchos que usan MSYS2 todavía la hacen .

Empecé a usarlo este año para reemplazar CygWin, y estoy bastante satisfecho.

Para instalar make, abra el shell MSYS2 y escriba los siguientes comandos:

# Update the package database and core system packages
pacman -Syu
# Close shell and open again if needed

# Update again
pacman -Su

# Install make
pacman -S make

# Test it (show version)
make -v
Delfino
fuente
3

Puede agregar la carpeta de la aplicación a su ruta desde un símbolo del sistema usando:

setx RUTA "% RUTA%; c: \ MinGW \ bin"

Tenga en cuenta que probablemente necesite abrir una nueva ventana de comandos para que la configuración de ruta modificada entre en vigor.

Buggieboy
fuente
0

user1594322 dio una respuesta correcta pero cuando lo probé encontré problemas de administración / permisos. Pude copiar 'mingw32-make.exe' y pegarlo, anular / omitir los problemas de administración y luego editar la copia en 'make.exe'. En VirtualBox en un invitado Win7.

DBourne
fuente
0

Si bien make sí mismo está disponible como un ejecutable ( gnuwin32.sourceforge.netpaquetemake ) independiente , usarlo en un entorno de desarrollo adecuado significa usar msys2 .

Git 2.24 (Q4 2019) ilustra que:

Consulte la confirmación 4668931 , la confirmación b35304b , la confirmación ab7d854 , la confirmación be5d88e , la confirmación 5d65ad1 , la confirmación 030a628 , la confirmación 61d1d92 , la confirmación e4347c9 , la confirmación ed712ef , la confirmación 5b8f9e2 , la confirmación 41616ef , la confirmación c097b95 (4 de octubre de 2019) y la confirmación dbcd970 (30 de septiembre de 2019) por Johannes Schindelin ( dscho) .
(Combinado con Junio ​​C Hamano - gitster- en el compromiso 6d5291b , 15 de octubre de 2019)

test-tool run-command: aprender a ejecutar (partes de) el conjunto de pruebas

Firmado por: Johannes Schindelin

Git para Windows salta a través de aros para proporcionar un entorno de desarrollo que permite construir Git y ejecutar su suite de pruebas.

Con ese fin, se ofrece un sistema MSYS2 completo, incluida la marca GNU y GCC, como "el SDK de Git para Windows".
Tiene un precio: una descarga inicial de dicho SDK pesa varios cientos de megabytes, y el SDK descomprimido ocupa ~ 2GB de espacio en disco.

Un entorno de desarrollo mucho más nativo en Windows es Visual Studio. Para ayudar a los contribuyentes a usar ese entorno, ya tenemos un destino Makefile vcxprojque genera una confirmación con archivos de proyecto (y otros archivos generados), y la vs/masterrama de Git para Windows se vuelve a generar continuamente utilizando ese destino.

La idea es permitir la construcción de Git en Visual Studio y ejecutar pruebas individuales utilizando un Git portátil.

VonC
fuente