Estoy escribiendo un programa C usando gcc en cygwin. Mi pregunta es, ¿cómo se crea un archivo MAKE? Quiero decir, ¿qué extensión de archivo tiene? Sé cómo escribir reglas simples, pero no puedo guardar un archivo en el editor de texto con la extensión correcta. Imposible encontrar información sobre esto ... Esta es una pregunta prolly newbie. Así que deja que el fuego comience. :-Pextensión de archivo MAKE
Respuesta
Suelen llamarse Makefile
o makefile
. No hay extensión. Sin embargo, eso es solo una convención.
No es trivial para escribir un makefile, buscar un guía o tutorial =)
Abra su editor de texto favorito, y crear un archivo llamado Makefile
.
contenido puede variar, pero, siempre que disponga de un programa llamado hello.c
un muy, muy simple Makefile
para compilar podría ser:
hello: hello.c
gcc -Wall hello.c -o hello.exe
Después de que funcione con el funcionamiento del cygwin
shell:
$ ls
hello.c Makefile
$ make
....
Y su Makefile
intentará compilar hello.c
. Si todo sale como se espera, puede ejecutar el programa hello.exe
ejecutando el siguiente comando shell:
$ ./hello.exe
Aquí hay un buen tutorial sobre Makefiles.
Un archivo MAKE generalmente se llama simplemente Makefile
.
El nombre de archivo predeterminado para un archivo MAKE es Makefile
; este es el nombre que busca GNU Make cuando lo ejecuta sin ninguna opción. El argumento -f
le permite especificar un nombre de archivo alternativo si lo desea.
En realidad, los nombres que busca GNU se especifican [en el manual] (http://www.gnu.org/software/make/manual/make.html#Makefile-Names): "intenta los siguientes nombres, en orden : GNUmakefile, makefile y Makefile ". – bstpierre
Bastante justo. Pero la mayoría de las personas que escriben makefiles usan ese nombre. –
Puedes ponerle el nombre que quieras, pero ".mak" se ve bien.
... Google ... http://msdn.microsoft.com/en-us/library/aa380049%28VS.85%29.aspx ... sí
Solo si invoca make con la opción -f para indicarle qué archivo make usar. – haziz
Como está utilizando Cygwin que a su vez significa que se está utilizando GNU make, cito el relevant portion of the GNU make manual:
3,2 Qué Apellido darle a su Makefile
por defecto, cuando se marca busca la makefile, trata los nombres siguientes, en orden: GNUmakefile, makefile y Makefile . Normalmente, debe llamar al su archivo MAKE ya sea MakeFile o Makefile. (Recomendamos Makefile porque normalmente aparece cerca el comienzo de una lista de directorios, derecha cerca de otros archivos importantes tales como README.) El primer nombre registrado, GNUmakefile, no se recomienda para la mayoría de los archivos make . Debe usar este nombre si tiene un archivo MAKE que es específico para GNU make, y no será entendido por otras versiones de make. Otros programas make buscan makefile y Makefile, pero no GNUmakefile.
[...]
Si desea utilizar un nombre no estándar para su makefile, puede especificar el nombre de archivo MAKE con el ‘f’ o la opción ‘--file’. Los argumentos '-f name' o '--file = name' le dicen a make que lea el nombre de archivo como el archivo MAKE. Si usa más de una opción '-f' o '-file', puede especificar varios archivos Make . Todos los archivos MAKE se concatenan efectivamente en el orden especificado. Los nombres de makefile predeterminados GNUmakefile, makefile y Makefile no se verifican automáticamente si especifica '-f' o '--file'.
Los archivos MAKE generalmente no tienen una extensión. Por lo general, se llaman 'makefile' o 'Makefile'. En ocasiones, cuando alguien escribe un conjunto complejo de archivos MAKE que se incluyen entre sí, los archivos incluidos obtienen una extensión .mak para indicar que son archivos MAKE aunque no se los llame 'makefile'.
En los pocos lugares en los que he visto extensiones usadas en los nombres makefile por lo general han sido ya sea .make
o .gmk
, e incluso entonces esas extensiones son generalmente reservados para makefile fragmentos que se incluyen archivos por maestros dieron una de las nombres predeterminados
- 1. extensión de archivo MAKE
- 2. Obtener el nombre del archivo MAKE del archivo MAKE
- 3. Depende del archivo make
- 4. ¿Cómo cambiar la extensión de cada archivo en una lista con múltiples extensiones en GNU make?
- 5. Cómo documentar un archivo MAKE?
- 6. Agregar extensión de archivo a archivo de extensión-menos
- 7. Extensión de archivo JSON
- 8. Creación de un archivo MAKE FORTRAN
- 9. ¿Podría alguien explicar este archivo de make?
- 10. Ruta de directorio común del archivo MAKE
- 11. reevaluar las variables del archivo MAKE
- 12. Incluir archivo MAKE externo con CMake
- 13. autoconf no genera el archivo MAKE?
- 14. Colón y $ en el archivo MAKE
- 15. ¿Por qué GNU make eliminar un archivo
- 16. ¿Qué significa "todo" en un archivo MAKE?
- 17. ¿Cómo ejecutar un archivo MAKE en Windows?
- 18. Extensión de archivo Json Schema
- 19. lotes extensión de archivo hallazgo
- 20. Retire y archivo de extensión
- 21. obtener extensión de archivo (editar)
- 22. nombre de archivo sin extensión
- 23. lotes: Retire extensión de archivo
- 24. Node.js obtener extensión de archivo
- 25. Cómo comprobar si un archivo existe en un archivo MAKE
- 26. BSD Make y GNU Make makefile compatible
- 27. ¿Cómo validar una extensión de archivo solo si hay una extensión de archivo? Re: carrierwave
- 28. Exportar un archivo MAKE de bloques de código
- 29. ¿Cómo puedo escribir un archivo MAKE para autodetectar y paralelizar la compilación con GNU Make?
- 30. Utilice el mismo archivo make para make (Linux) y nmake (Windows)
Utilice la extensión de archivo que desee. Por ejemplo, llámalo 'makefile', o podrías llamarlo' makefile.mytotallyawesomemakefiletypeoffile' – JoshD
Bueno, en una máquina Linux generalmente no tiene una extensión en absoluto, es solo "makefile" o "Makefile". Puedes llamarlo como quieras y usar la opción '-f' para decir" hacer "cuál usar. – Pointy