¿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?

Kim
fuente
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
1
Aquí
Sherzod,

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.

Marcelo Cantos
fuente
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

Franco
fuente
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)

Sean Lynch
fuente
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

alan9uo
fuente
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.

ledawg
fuente
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
sunny0402
fuente
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

raRaRa
fuente
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.

Validus Oculus
fuente
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

ap-osd
fuente
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

Oriol Manyà Pau
fuente
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.

WENDYN
fuente
-2

Quizás pueda probar NetBeans IDE.

usuario0814
fuente