¿Cómo ejecutar un archivo MAKE en Windows?


187

Tengo algunas demos que descargué y vienen con un Makefile.win y un Makefile.sgi. ¿Cómo puedo ejecutar estos en Windows para compilar las demostraciones?


1
Debo mencionar que soy más una persona de Linux, pero necesito usar Windows en este momento, así que no tengo ni idea.
Kim

Respuestas:


114

Si tiene Visual Studio, ejecute el símbolo del sistema de Visual Studio desde el menú Inicio, cambie al directorio que contiene Makefile.winy escriba esto:

nmake -f Makefile.win

También puede usar el símbolo del sistema normal y ejecutar vsvars32.bat (c: \ Archivos de programa (x86) \ Microsoft Visual Studio 9.0 \ Common7 \ Tools para VS2008). Esto configurará el entorno para ejecutar nmake y buscar las herramientas del compilador.


55
¿Cómo ejecuto el símbolo del sistema de Visual Studio desde el menú de inicio?
Kim

Muy bien, lo descubrí. Pero, por supuesto, no se compilaría debido a errores. Solo mi suerte. Gracias sin embargo.
Kim

9
Para aquellos con VS2012, el símbolo del sistema se llama "Símbolo del sistema del desarrollador para VS2012". Inicio -> Buscar -> "comando" es como lo encontré.
innegablementerob

@NSD: puede probar otras "marcas", pero estos archivos generalmente se escriben contra el dialecto de nmake y suponiendo que VS está instalado y en la ruta. Es posible que el VS Express gratuito sea suficiente.
Marcelo Cantos

@MarceloCantos Soy un novato en Linux y Making. ¿Qué pasa si tengo un archivo .am y .mk? No tengo ningún archivo .win. Estoy tratando de hacer wget, por cierto.
Cheeku

53

Echa un vistazo a cygwin , un entorno similar a Unix para Windows


66
¡Cygwin funcionó bien para mí! Solo tuve que verificar, durante la instalación, algunos paquetes en Devel: 'make' y también 'gcc' como se explica aquí .
Damien Leroux

66
También recomiendo instalar cygwin usando chocolatey, por lo que el comando para obtener makees este:choco install make --source=cygwin
zygimantus

después de instalar con choco, ¿cómo puedo agregarlo a mi shell de comandos? hay un camino para agregar?
XaBerr

2
En caso de que lo haya instalado con choco, agregue esta línea (entre comillas) a su variable de ruta en las variables del sistema "C: \ tools \ cygwin \ bin"
Ali.Ghodrat

40

Echa un vistazo a GNUWin 's maquillaje , que proporciona un puerto nativo para Windows (sin necesidad de un entorno de ejecución completa como Cygwin)


8
Además, agregue "C: \ Archivos de programa (x86) \ GnuWin32 \ bin" a la RUTA del sistema.
ccy

29

Aquí está mi forma rápida y temporal de ejecutar un Makefile

  • descargar make de SourceForge: gnuwin32
  • instalarlo
  • ir a la carpeta de instalación

C: \ Archivos de programa (x86) \ GnuWin32 \ bin

  • copie todos los archivos en el contenedor a la carpeta que contiene Makefile

libiconv2.dll libintl3.dll make.exe

  • abra el cmd (puede hacerlo con el botón derecho con shift ) en la carpeta que contiene Makefile y ejecute

make.exe

hecho.

Además, puede agregar argumentos después del comando, como

make.exe skel


11
Probablemente sea mejor agregar un bindirectorio a PATHla variable de entorno. Esto estará make.exedisponible desde cualquier lugar.
Yukulélé

1
Creo que está hecho por defecto, al menos ese fue el caso cuando instalé gnuwin32. Por supuesto, copiar los archivos es una mala práctica de todos modos.
JFFIGK

1
No se hace por defecto (o no en mi caso). Al agregarlo a la ruta, puede ejecutar make desde la carpeta del proyecto.
Víctor

Trabajar como un campeón
Trungducng

28

Esta pregunta puede ser antigua, pero mi solución, que es, con mucho, la más simple para cualquier usuario de Windows, me atrevo a decir, no está en la lista.

Paso 1: Instale el administrador de paquetes de chocolate para WINDOWS (compatible con Windows 7+ / Windows Server 2003+) aquí

Paso 2: correchoco install make

Paso 3: Benefíciese de un administrador de paquetes bien mantenido. Make se habrá agregado a la ruta global y se ejecutará en todas las CLI (powershell, git bash, cmd ...)

No estoy afiliado a Choco, pero ES ASÍ DE BUENO.


8

Si instala Cygwin . Asegúrese de seleccionar make en el instalador. Luego puede ejecutar el siguiente comando siempre que tenga un Makefile.

make -f Makefile

https://cygwin.com/install.html

6

Con Visual Studio 2017 tuve que agregar esta carpeta a mi variable de entorno de ruta de Windows 10:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.10.25017\bin\HostX64\x64

También hay HostX86


3

En primer lugar, agregue la ruta de las herramientas comunes de Visual Studio ( c:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools) a la ruta del sistema. Para saber cómo agregar una ruta a la ruta del sistema, consulte este sitio web: http://www.computerhope.com/issues/ch000549.htm . Solo necesitas esto una vez.

Después de eso, siempre que lo necesite, abra una línea de comando y ejecútelo vsvars32.batpara agregar todas las rutas de herramientas de estudio visual requeridas en la ruta del sistema.

Entonces puedes llamar nmake -f makefile.mak

PD: la ruta de las herramientas comunes de Visual Studio puede ser diferente en su sistema. Por favor cámbialo en consecuencia.


3

Si es un "Makefile de NMake", es decir, la sintaxis y el comando son compatibles con NMake, funcionará de forma nativa en Windows. Por lo general Makefile.win(el .winsufijo) indica que es un archivo MAKE compatible con Windows NMake. Entonces podrías intentarlo nmake -f Makefile.win.

A menudo, se proporcionan archivos Makefiles Linux estándar y NMakeparece prometedor. Sin embargo, el siguiente enlace toma un simple Makefile de Linux y explica algunos problemas fundamentales que uno puede encontrar. También sugiere algunas alternativas para manejar Linux Makefiles en Windows.

Makefiles en Windows


1

Intenté con cygwin y gnuwin, y no funcionó para mí, supongo porque el archivo MAKE usaba principalmente código específico de Linux.

Lo que funcionó fue usar Ubuntu Bash para Windows 10 . Este es un Marvel si vienes de MAC como es mi caso:

  1. Para instalar Ubuntu Bash: https://itsfoss.com/install-bash-on-windows/
  2. Una vez en la consola, para instalar make simplemente escriba "make" y le dará las instrucciones para descargarlo.

Extras:

  1. Útil habilitar copiar / pegar en bash: Copiar Pegar en Bash en Ubuntu en Windows
  2. En mi caso, la marca se llamaba Maven, así que tengo que instalarla también: /ubuntu/722993/unable-to-locate-package-maven
  3. Para acceder al sistema de archivos de Windows C: unidad, por ejemplo: "cd / mnt / c /"

Espero eso ayude


0

Uso el conjunto de herramientas MinGW que proporciona la mingw32-makeherramienta de compilación, si la tiene en la PATHvariable de su sistema , en el símbolo del sistema de Windows simplemente vaya al directorio que contiene los archivos y escriba este comando:

mingw32-make -f Makefile.win

Y ya está hecho.


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.