LinuxParty
Es
probable que haya surgido, como una herramienta de compilación,
utilizado para convertir el código fuente en archivos ejecutables
(make; make install). Sin embargo, debe hacer mucho más que eso. Se
puede utilizar para automatizar casi cualquier proceso que implica la
ejecución de un conjunto de comandos en los archivos de origen. Siga leyendo para averiguar lo que realmente hace, y cómo puede usarlo.
Para obtener sus instrucciones, make, busca un archivo llamado makefile o Makefile, que contiene las definiciones para la construcción de diferentes objetivos. Se especifica el objetivo en la línea de comandos, y luego make lleva a cabo las acciones para ese objetivo (por ejemplo make install llevará a cabo los comandos para la instalación de destino). Sin embargo, el makefile también especificará un conjunto de archivos que depende de cada objetivo, y los comandos se llevarán a cabo sólo si los archivos han sido modificados desde la última vez que este objetivo se ha generado. De lo contrario, No hará nada.
Este es un jemplo muy básico:
El objetivo, todo es uno que es llamado por defecto si sólo se escribe make desde la línea de comandos. Es un objetivo declarado como falsos de manera que si usted termina con una línea llamada all en el directorio de trabajo, no se pondrá en el camino en esta meta. Aquí se hará un llamamiento al objetivo myfile. Si la dependencia myfile.o, se ha modificado más recientemente que el objetivo myfile, o si myfile no existe, entonces el comando gcc - -o $@ $< se arrancará. $@ Se refiere al nombre del objetivo, y $< se refiere a una dependencia, Nota: Si no se especifica una dependencia la sección del makefile nunca se ejecutará.
Make y LaTeX
Entonces, ¿Lo qué realmente hace make es generar un objetivo de cualquier dependencia. Esto significa que usted puede utilizar make no sólo para la elaboración de programas, sino para actuar cuando quiera realizar cualquier tipo de automatización tipo de archivo se cambia. Por ejemplo, podría utilizar este makefile para automatizar correr LaTeX:
(pdflatex debe ejecutarse varias veces debido a la interacción con bibtex.) Aquí, si se edita myreport.tex ejecutando make (no es necesario ningún argumento) se vuelva a generar el archivo de destino (myreport.pdf) con las actualizaciones de referencia apropiados y, a continuación, ábralo con xpdf. Puede añadir el nombre de archivo del bibliografía, así como el archivo de origen de TeX por lo que hacen se ejecutaría si fueron alteradas de cualquier archivo.

Para obtener sus instrucciones, make, busca un archivo llamado makefile o Makefile, que contiene las definiciones para la construcción de diferentes objetivos. Se especifica el objetivo en la línea de comandos, y luego make lleva a cabo las acciones para ese objetivo (por ejemplo make install llevará a cabo los comandos para la instalación de destino). Sin embargo, el makefile también especificará un conjunto de archivos que depende de cada objetivo, y los comandos se llevarán a cabo sólo si los archivos han sido modificados desde la última vez que este objetivo se ha generado. De lo contrario, No hará nada.
Este es un jemplo muy básico:
.PHONY: all
all: myfile
myfile: myfile.o
gcc -g -o $@ $<
El objetivo, todo es uno que es llamado por defecto si sólo se escribe make desde la línea de comandos. Es un objetivo declarado como falsos de manera que si usted termina con una línea llamada all en el directorio de trabajo, no se pondrá en el camino en esta meta. Aquí se hará un llamamiento al objetivo myfile. Si la dependencia myfile.o, se ha modificado más recientemente que el objetivo myfile, o si myfile no existe, entonces el comando gcc - -o $@ $< se arrancará. $@ Se refiere al nombre del objetivo, y $< se refiere a una dependencia, Nota: Si no se especifica una dependencia la sección del makefile nunca se ejecutará.
Make y LaTeX
Entonces, ¿Lo qué realmente hace make es generar un objetivo de cualquier dependencia. Esto significa que usted puede utilizar make no sólo para la elaboración de programas, sino para actuar cuando quiera realizar cualquier tipo de automatización tipo de archivo se cambia. Por ejemplo, podría utilizar este makefile para automatizar correr LaTeX:
all: myreport
myreport.pdf: myreport.tex
pdflatex $<
bibtex myreport
pdflatex $<
pdflatex $<
xpd
(pdflatex debe ejecutarse varias veces debido a la interacción con bibtex.) Aquí, si se edita myreport.tex ejecutando make (no es necesario ningún argumento) se vuelva a generar el archivo de destino (myreport.pdf) con las actualizaciones de referencia apropiados y, a continuación, ábralo con xpdf. Puede añadir el nombre de archivo del bibliografía, así como el archivo de origen de TeX por lo que hacen se ejecutaría si fueron alteradas de cualquier archivo.
Nota: Si no desea editar el fichero cada vez que quiera ejecutar make, escriba "touch filename" para engañar a make creyendo que ha modificado la fecha. Alternativamente ejecute: make myreport y el objetivo se hará aun cuando el código fuente no se hubiera modificado.Un ejemplo mejorado.
LATEX = pdflatexContinúa aquí. (en inglés)
BIBTEX = bibtex
VIEWER = xpdf
all: myreport
myreport: myreport.tex
$(LATEX) $<
$(BIBTEX) $@
$(LATEX) $<
$(LATEX) $<
$(VIEWER) $@.pdf

-
Programación
- Las 25 mejores herramientas y frameworks PHP para desarrolladores en 2025 / 2026
- Los siete mejores IDE para PHP.
- KBasic, el auténtico Visual Basic para Linux. Y compatible con él.
- libdvdcss2 y w32codecs para Ubuntu
- Crear y empaquetar software para Linux en RPM, parte 1, creando paquetes.
- Windsurf Editor: el IDE con inteligencia artificial que está revolucionando el desarrollo de software
- GitHub Copilot Chat ahora es de Código Abierto y personalizable
- GitHub Copilot: Tu nuevo copiloto de código con IA, compatible con VS Code, JetBrains, Vim y más
- Distribuir la carga de trabajo (entre servidores) de su aplicación PHP con Gearm
- ¿Por qué usar FreeBASIC hoy por hoy? Rápido, compatible y sorprendentemente útil
- Se lanzó Qt Creator 17, un IDE de código abierto, con un cambio importante para los proyectos
- Herramientas RAD para Linux: Desarrollo Rápido y Eficiente




