Provided by: manpages-es_4.27.0-1_all bug

NOMBRE

       make - Herramienta para mantener grupos de programas

SINOPSIS

       make [OPCIÓN]... [OBJETIVO]...

DESCRIPCIÓN

       El propósito de la utilidad make es determinar automáticamente qué partes de un programa grande necesitan
       ser  recompiladas,  y  ejecutar  las  órdenes  pertinentes  para  recompilarlas.  Este manual describe la
       implementación de make del proyecto GNU, que ha sido escrita  por  Richard  Stallman  y  Roland  McGrath.
       Nuestros  ejemplos muestran programas en C, que es lo más común, pero se puede emplear make con cualquier
       lenguaje de programación cuyo compilador pueda ejecutarse con una orden del shell.   De  hecho,  make  no
       está  limitado a compilar programas.  Se puede usar para describir cualquier tarea donde algunos ficheros
       deban ser actualizados automáticamente a partir de otros en cualquier momento en que éstos cambien.

       Para prepararnos a utilizar make, debemos escribir antes un fichero llamado el makefile que describe  las
       relaciones entre los ficheros de nuestro programa, y las órdenes necesarias para actualizar cada fichero.
       En un programa, normalmente el fichero ejecutable se actualiza a partir de los ficheros o módulos objeto,
       los cuales a su vez se construyen mediante la compilación de los ficheros con el código fuente.

       Una vez que exista un makefile apropiado, cada vez que cambiemos algún fichero fuente, esta simple orden:

              make

       es  suficiente  para  que  se realicen todas las recompilaciones necesarias.  El programa make emplea los
       datos del makefile (y otros internos) y los tiempos de última modificación de los ficheros  para  decidir
       cuáles  de  ellos  necesitan  ser  actualizados.   Para  cada  uno  de esos ficheros, ejecuta las órdenes
       indicadas en el makefile.

       make ejecuta las órdenes del makefile para actualizar uno o más objetivos, que suelen ser un programa. Si
       no se define -f, make buscará archivos GNUmakefile, makefile y MakeFile, en ese orden.

       En general, se debería llamar al archivo de makefile makefile o Makefile. Se recomienda  Makefile  porque
       aparecerá  cerca del comienzo en una lista de directorios, justo cerca de otros archivos importantes como
       README. El primer nombre seleccionado, GNUmakefile, no se recomienda para la mayoría  de  los  makefiles.
       Sólo se debería usar este nombre si el archivo es específico de GNU Make, y no puede ser interpretado por
       otras versiones de make. Si makefile es '-', se leerá la entrada estándar.

       make  actualiza  un objetivo si éste depende de ficheros de prerrequisito (o dependencias) que hayan sido
       modificados desde la última modificación del objetivo, o si éste no existe.

OPCIONES

       -b, -m
            Estas opciones no hacen nada, y solo se reconocen por compatibilidad con otras versiones de make.

       -B, --always-make
            Ejecuta incondicionalmente todos los objetivos.

       -C dir, --directory=dir
            Cambia el directorio de trabajo a dir antes de  leer  los  makefiles  o  hacer  otra  cosa.   Si  se
            especifican  varias  opciones  -C,  cada una se interpreta en relación a la anterior: -C / -C etc es
            equivalente a -C /etc.  Esto se usa típicamente en llamadas recursivas a make.

       -d   Muestra información de depuración además  del  procesamiento  normal.   Esta  información  dice  qué
            ficheros  están  siendo  considerados  para  ser  rehechos,  qué  tiempos  de  ficheros están siendo
            comparados y con  qué  resultados,  qué  ficheros  necesitan  realmente  ser  rehechos,  qué  reglas
            implícitas  están  siendo  tenidas en cuenta y cuáles se están aplicando: o sea, todo lo interesante
            sobre cómo make decide las cosas que tiene que hacer.

       --debug[=FLAGS]
            Muestra información  de  depuración  además  del  procesamiento  normal.   Si  se  omite  FLAGS,  el
            comportamiento es el mismo que si se especificara -d. FLAGS puede ser cualquiera o todos los nombres
            siguientes, separados por comas o espacios. Sólo el primer carácter es significativo: el resto puede
            omitirse:  all  para  todos  los  resultados  de depuración (el mismo que usando -d), basic para una
            depuración más simple, verbose para una depuración más amplia, implicit para mostrar operaciones  de
            búsqueda  de  reglas  implícitas,  jobs para ver detalles sobre invocación de órdenes, makefile para
            depurar durante la reconstrucción de  archivos  de  makefile,  print  muestra  todo  lo  que  se  va
            ejecutando  aunque  no  tengan  salida  alguna,  y  why  muestra  la  razón  por la que make decidió
            reconstruir cada objetivo. Utilice none para desactivar todas las opciones de depuración anteriores.

       -e, --environment-overrides
            Da a las variables que vienen del entorno precedencia a las que vienen de los makefiles.

       -E cadena, --eval cadena
            Interpreta string mediante la función eval, antes de analizar cualquier makefile.

       -f fichero, --file=fichero, --makefile=FICHERO
            Emplea fichero como un makefile.

       -i, --ignore-errors
            No tiene en cuenta ningún error en las órdenes ejecutadas para reconstruir ficheros.

       -I dir, --include-dir=dir
            Especifica un directorio dir en donde buscar makefiles incluidos.  Si se  usan  varias  opciones  -I
            para  especificar varios directorios, éstos se buscan en el orden dado.  De forma distinta a como se
            deben dar los argumentos de otras opciones de make, los directorios dados en las opciones -I  pueden
            ir inmediatamente tras la I: o sea, se permite tanto -Idir como -I dir. Esta sintaxis se permite por
            compatibilidad con la misma opción -I del preprocesador de C.

       -j [trabajos], --jobs[=trabajos]
            Especifica el número de trabajos (órdenes) que se deban ejecutar simultáneamente.  Si hay más de una
            opción  -j, solo la última vale.  Si se da la opción -j sin ningún argumento, make no pondrá límites
            al número de trabajos que puedan ejecutarse simultáneamente.

       --jobserver-style=estilo]
            El estilo del servidor de tareas a utilizar. El style puede ser uno  de  fifo,  pipe,  o  sem  (sólo
            Windows).

       -k, --keep-going
            Continúa  tanto  como sea posible tras un error.  Mientras que el objetivo que ha fallado, y los que
            dependen de él, no pueden ser reconstruidos, las otras dependencias de estos objetivos sí que pueden
            procesarse, así que con esta opción se procesan.

       -l [carga], --load-average[=carga]
            Dice que no deberá empezarse ningún nuevo trabajo (mandato) si hay otros trabajos en ejecución y  la
            carga  media  es  como  poco  carga  (un número real, en coma flotante).  Sin el argumento, anula un
            límite anterior de carga, si lo hubiera.

       -L, --check-symlink-times
            Emplea el tiempo de la última modificación entre los enlaces simbólicos y el objetivo.

       -n, --just-print, --dry-run, --recon
            Muestra las órdenes que se ejecutarían, pero no se ejecutan salvo en alguna circunstancia concreta.

       -o fichero, --old-file=fichero, --assume-old=fichero
            No reconstruye el fichero especificado, incluso siendo más antiguo que sus dependencias,  y  tampoco
            reconstruye  nada  que  dependa  de  cambios en fichero.  Esencialmente el fichero se trata como muy
            viejo, y sus reglas no son tenidas en cuenta.

       -O[tipo], --output-sync[=tipo]
            Al ejecutar múltiples tareas en paralelo con -j, asegúrese de que la salida de cada tarea se  recoje
            por  separado  en lugar de mezclarse con el resultado de otras tareas. Si no está definido type o es
            target se agrupará el resultado de toda la receta para cada objetivo. Si type es line  el  resultado
            de  cada  línea de órdenes dentro de una receta se agrupa. Si type es recurse se agrupa la salida de
            un make recursivo entero. Si type es none la sincronización de salida estárá desactivada.

       -p, --print-data-base
            Muestra la base de datos (reglas y valores de variables) que resultan de leer los  makefiles;  luego
            todo  se  procesa  de  la  forma  usual  o  de  la  que se haya especificado.  También se muestra la
            información de versión dada por la opción -v (vea más abajo).  Para ver la base de datos  sin  hacer
            ninguna otra cosa, dé la orden make -p -f/dev/null.

       -q, --question
            “Modo  de interrogación (Query)”.  No ejecuta ninguna orden ni muestra nada; solo devuelve un status
            de salida cero si los objetivos especificados ya están actualizados, o no cero si no lo están.

       -r, --no-builtin-rules
            Elimina el empleo de las reglas implícitas incorporadas.  También borra la lista  predeterminada  de
            sufijos para las reglas de sufijo.

       -R, --no-builtin-variables
            No define ninguna variable interna.

       -s, --silent, --quiet
            Modo de operación silencioso; no muestra las órdenes que se están ejecutando.

       --no-silent
            Cancela el efectvo de la opción -s.

       -S, --no-keep-going, --stop
            Cancela el efecto de la opción -k.

       -t, --touch
            Toca  los  ficheros  (los  marca  como actualizados sin cambiarlos realmente) en vez de ejecutar las
            órdenes pertientes.  Esto se emplea para pretender que las órdenes han sido ejecutadas, con  el  fin
            de engañar a futuras ejecuciones de make.

       --trace
            Se muestra información sobre la disposición de cada objetivo (el motivo por el cual el objetivo está
            siendo reconstruido y las órdenes para hacerlo).

       -v, --version
            Muestra  la  versión  de  make  más  un  copyright,  una  lista de autores y un aviso de ausencia de
            garantía.

       -w, --print-directory
            Muestra un mensaje conteniendo el directorio de trabajo antes y después de otro procesamiento.  Esto
            puede ser útil para seguir la pista a errores que vienen de anidamientos complicados de órdenes make
            recursivas.

       --no-print-directory
            Desactiva -w aunque haya sido indicada expresamente.

       --shuffle[=MODO]
            Activa la ordenación de fines y requisitos previos. MODE es uno entre none para deshabilitar el modo
            shuffle, random para ordenar los prerequisitos en orden aleatorio,  reverse  para  considerarlos  en
            orden  inverso,  o  un  número  entero  <semilla>  que  habilita el modo Random con un valor semilla
            específico.  Si se omite MODE el predeterminado será random.

       -W fichero, --what-if=fichero, --new-file=fichero, --assume-new=fichero
            Pretende que el objetivo fichero acaba de ser modificado.  Cuando se emplea con la opción  -n,  esto
            nos  enseña  lo  que  pasaría  si  fuéramos  a  modificar ese fichero.  Sin -n, es casi lo mismo que
            ejecutar la orden touch en el fichero dado antes de dar la orden make, salvo en  que  el  tiempo  de
            modificación se cambia solamente en la imaginación de make.

       --warn-undefined-variables
            Avisa en caso de referenciar alguna variable sin definir.

ESTADO DE SALIDA

       GNU  Make  finaliza  con  estado de salida cero si todos los makefiles se analizaron con éxito y no falló
       ninguna de los objetivos que se construyeron. Se devolverá un estado de uno si se utilizó la opción -q  y
       make  determina  que se necesita reconstruir un objetivo. Se devolverá un estado de dos si se encontraron
       errores.

VÉASE TAMBIÉN

       La documentación completa de make se mantiene como manual Texinfo.  Si los programas info  y  make  están
       adecuadamente instalados en su sistema, la orden

              info make

       debería mostrarle el manual completo.

ERRORES

       Consulte el capítulo “Problems and Bugs” en The GNU Make Manual.

AUTOR

       Dennis Morse, de la Stanford University, escribió originalmente esta página del Manual.  Mike Frysinger y
       Roland McGrath trabajaron posteriormente en ella.Actualmente la mantiene Paul Smith.

COPYRIGHT

       Copyright © 1992-1993, 1996-2023 Free Software Foundation, Inc.  Este archivo es parte de GNU Make.

       GNU  Make  es software libre; usted puede redistribuirlo y/o modificarlo bajo los términos de la Licencia
       Pública General de GNU publicada por la Free Software Foundation; la versión 3 de la licencia,  o  (a  su
       elección) cualquier versión posterior.

       GNU  Make  se  distribuye  con  la  esperanza de que sea útil, pero sin ninguna garantía; sin la garantía
       implícita de MERCANTABILIDAD o APTIDAD PARA UN PROPÓSITO PARTICULAR. Consulte la Licencia Pública General
       de GNU para más detalles.

       Debería haber recibido una copia de la Licencia Pública General de GNU junto con este  programa.  Si  no,
       vea https://www.gnu.org/licenses/.

TRADUCCIÓN

       La  traducción  al  español  de  esta  página  del  manual  fue  creada  por  Gerardo  Aburruzaga  García
       <gerardo.aburruzaga@uca.es> y Marcos Fouces <marcos@debian.org>

       Esta traducción es documentación libre;  lea  la  GNU General Public License Version 3  o  posterior  con
       respecto a las condiciones de copyright.  No existe NINGUNA RESPONSABILIDAD.

       Si  encuentra  algún  error  en  la  traducción  de esta página del manual, envíe un correo electrónico a
       debian-l10n-spanish@lists.debian.org.

GNU                                            26 de mayo de 2023                                        MAKE(1)