Available in

(1) (1)/es (1)/ja (1)/pl (1L)/nl (1posix) (1s) (3erl)

TOC

MAKE(1L)                       rdenes de Usuario                      MAKE(1L)



NOMBRE

       make - utilidad `make' de GNU para mantener grupos de programas

SINOPSIS

       make  [ -f makefile ] [ opcin ] ... [ variable=valor ] ... [ objetivo ]
       ...

AVISO

       Esta pgina del Manual es un extracto de la documentacin  de  GNU  make.
       Se actualiza slo ocasionalmente, porque el proyecto GNU no emplea nroff
       (ni incluso groff ;-) para su documentacin. Para la  documentacin  com-
       pleta  y  al  da, remtase al fichero make en formato Info, o al fichero
       make.dvi en formato DVI, que se construyen a partir del fichero  fuente
       escrito en TeXInfo make.texinfo.

DESCRIPCIN

       El  propsito de la utilidad make es determinar automticamente qu piezas
       de un programa necesitan ser recompiladas, y  lanzar  las  rdenes  para
       recompilarlas.   Este  manual  describe  la  implementacin  de make del
       proyecto GNU, que ha sido escrita por el gran Richard  Stallman  y  por
       Roland  McGrath.   Nuestros ejemplos muestran programas en C, que es lo
       ms comn, pero se puede emplear make con cualquier lenguaje  de  progra-
       macin  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
       automticamente a partir de otros en cualquier momento en que stos  cam-
       bien.

       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  mdulos  objeto, los cuales a su vez se construyen
       mediante la compilacin de los ficheros con el cdigo fuente.

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

              make

       basta  y  sobra  para  que  se realicen todas las recompilaciones nece-
       sarias.  El programa make emplea los datos del makefile (y otros inter-
       nos)  y  los  tiempos de ltima modificacin de los ficheros para decidir
       cules de ellos necesitan ser  actualizados.   Para  cada  uno  de  esos
       ficheros, lanza las rdenes que tiene grabadas en su base de datos.

       make  ejecuta rdenes en el makefile para actualizar uno o ms nombres de
       objetivo, donde nombre es tpicamente un programa.  Si no se ha dado  la
       opcin  -f,  make buscar los makefiles llamados GNUmakefile, makefile, y
       Makefile, en este orden, parando en el primero que encuentre y dando un
       error si no encuentra ninguno.

       Normalmente  deberamos llamar a nuestro makefile o bien makefile o bien
       Makefile.  (Recomendamos Makefile porque normalmente aparece cerca  del
       principio  del  listado  de  un  directorio,  al lado de otros ficheros
       importantes como LAME.)  El primer nombre que se busca, GNUmakefile, no
       se  recomienda  para  la  mayora de los makefiles.  Solamente deberamos
       emplear este nombre si tenemos un makefile que sea especfico  del  make
       de  GNU  y no pueda ser ledo y comprendido por otras versiones de make.
       Si makefile es `-', se lee de la entrada estndar.

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

OPCIONES

       -b

       -m   Estas opciones no hacen nada, y slo se reconocen por  compatibili-
            dad con otras versiones de make.

       -C 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 relacin a la anterior: -C / -C etc es equivalente
            a -C /etc.  Esto se usa tpicamente en llamadas recursivas a  make.

       -d   Muestra  informacin  de  depuracin adems del procesamiento normal.
            Esta informacin dice qu ficheros estn siendo considerados para ser
            rehechos,  qu  tiempos de ficheros estn siendo comparados y con qu
            resultados, qu  ficheros  necesitan  realmente  ser  rehechos,  qu
            reglas  implcitas  estn  siendo  tenidas en cuenta y cules se estn
            aplicando: o sea, todo lo interesante sobre cmo  make  decide  las
            cosas que tiene que hacer.

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

       -f makefile
            Emplea makefile como un makefile.

       -i   No tiene en cuenta ningn  error  en  las  rdenes  ejecutadas  para
            reconstruir ficheros.

       -I 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  directo-
            rios  dados en las opciones -I pueden ir inmediatamente tras la I:
            o sea, se permite tanto -Idir como -I dir.  Esta sintaxis se  per-
            mite por compatibilidad con la misma opcin -I del preprocesador de
            C.

       -j trabajos
            Especifica el nmero de trabajos (rdenes)  que  se  deban  ejecutar
            simultneamente.  Si hay ms de una opcin -j, slo la ltima vale.  Si
            se da la opcin -j sin ningn argumento, make  no  pondr  lmites  al
            nmero de trabajos que puedan ejecutarse simultneamente.

       -k   Contina  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 opcin se procesan.

       -l

       -l carga
            Dice que no deber empezarse ningn nuevo trabajo (mandato)  si  hay
            otros trabajos en ejecucin y la carga media es como poco carga (un
            nmero real, en coma flotante).  Sin el argumento, anula  un  lmite
            anterior de carga, si lo hubiera.

       -n   Muestra las rdenes que se ejecutaran, pero no se hace nada ms. Muy
            til.

       -o fichero
            No reconstruye el fichero especificado, incluso siendo ms  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.

       -p   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.  Tambin se muestra la
            informacin de versin dada por la opcin -v (vea  ms  abajo).   Para
            ver  la base de datos sin hacer ninguna otra cosa, d la orden make
            -p -f/dev/null.

       -q   ``Modo de interrogacin (Query)''.  No  ejecuta  ninguna  orden  ni
            muestra  nada;  slo devuelve un status de salida cero si los obje-
            tivos especificados ya estn actualizados, o no cero si no lo estn.

       -r   Elimina  el  empleo  de las reglas implcitas incorporadas.  Tambin
            borra la lista  predeterminada  de  sufijos  para  las  reglas  de
            sufijo.

       -s   Modo  de  operacin  silencioso;  no muestra las rdenes que se estn
            ejecutando.

       -S   Cancela el efecto de la opcin -k.  Esto nunca es  necesario  salvo
            en  un  make recursivo, en el que -k puede venir heredado del make
            superior a travs de MAKEFLAGS o si activamos -k en la variable  de
            ambiente MAKEFLAGS.

       -t   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 engaar a futuras ejecuciones de make.

       -v   Muestra la versin del programa make ms la lista  de  autores,  una
            nota  sobre los derechos de copia y otra sobre la falta de garanta
            y a dnde enviar informes de fallos.   Despus  de  imprimirse  esta
            informacin,  el  procesamiento  contina  normalmente. Para obtener
            esta informacin  sin  ningn  otro  efecto,  d  la  orden  make  -v
            -f/dev/null.

       -w   Muestra  un  mensaje  conteniendo el directorio de trabajo antes y
            despus de otro procesamiento.  Esto puede ser til para  seguir  la
            pista  a  errores que vienen de anidamientos complicados de rdenes
            make recursivas.

       -W fichero
            Pretende que el objetivo fichero acaba de ser modificado.   Cuando
            se emplea con la opcin -n, esto nos ensea lo que pasara si furamos
            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 modificacin se cambia solamente en  la  imagi-
            nacin de make.

OTROS ARGUMENTOS

       variable=valor
            Le  da a la variable de make el valor especificado. Esta definicin
            tiene precedencia sobre la que pudiera haber en el makefile.

       objetivo
            Cualquier argumento que no empiece por -  o  que  no  contenga  un
            signo  = se considera un objetivo que make tiene que construir. Si
            no se menciona ninguno en la lnea de  rdenes,  make  construir  el
            primer objetivo que encuentre en el makefile.

VASE TAMBIN

       /usr/info/make.info*
                           The GNU Make Manual

FALLOS

       Consulte el captulo `Problems and Bugs' en The GNU Make Manual.

AUTORES

       Dennis  Morse,  de  la  Stanford University, escribi originalmente esta
       pgina del Manual.  Roland McGrath trabaj posteriormente en  ella.   Fue
       traducida  al  espaol  por  Gerardo Aburruzaga Garca (gerardo [AT] cica.es),
       quien aadi adems algunas lneas (adems de sta ;-).



GNU                             22 Agosto 1989                        MAKE(1L)

COMMENTS

Add your comment here. Whitespace and linebreaks are preserved. URLs are linked automatically.
CAPTCHA

No HTML allowed. URLs will be linked with nofollow attribute. Whitespace is preserved.