Instrucciones en PDF - Elisa Schaeffer
Instrucciones en PDF - Elisa Schaeffer
Instrucciones en PDF - Elisa Schaeffer
- No tags were found...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
CAPÍTULO 8. EJECUCIÓN AUTOMATIZADA 167<br />
DOC = taller<br />
all: $(DOC).pdf<br />
$(DOC).dvi: $(DOC).tex $(DOC).bib<br />
latex $<<br />
bibtex $(DOC)<br />
latex $<<br />
latex $<<br />
$(DOC).ps: $(DOC).dvi<br />
dvips -Pcmz -o $@ $^<br />
$(DOC).pdf: $(DOC).ps<br />
ps2pdf $^ $@<br />
scp $@ elisa@yalma.fime.uanl.mx:\<br />
/home/elisa/public_html/teaching/taller/$@<br />
clean:<br />
rm -f $(DOC).aux $(DOC).dvi $(DOC).log \<br />
$(DOC).bbl $(DOC).blg<br />
También se puede g<strong>en</strong>erar marcos basados <strong>en</strong> otros macros, que resulta útil <strong>en</strong> muchos casos<br />
de programación. Si por ejemplo queremos utilizar el marco FUENTES que ya conti<strong>en</strong>e la lista<br />
de los archivos de código fu<strong>en</strong>te <strong>en</strong> el l<strong>en</strong>guaje C para obt<strong>en</strong>er una lista de los archivos objetos<br />
.o g<strong>en</strong>erados por la compiladora, definimos OBJECTOS = $(FUENTES,.c=.o) que<br />
resulta que la parte antes de la igualdad = será reemplazado <strong>en</strong> cada ocurr<strong>en</strong>cia <strong>en</strong> la significancia<br />
de $(FUENTES) por la parte después: es decir, cada .c <strong>en</strong> $(FUENTES) será un .o <strong>en</strong><br />
$OBJECTOS, pero nada más cambia.<br />
make cu<strong>en</strong>ta con varias definiciones más para ayudar a crear archivos Makefile más g<strong>en</strong>erales<br />
y dinámicas. Para más información, se recomi<strong>en</strong>da el manual oficial de GNU Make [14].<br />
8.2. Ejecución trasfondo<br />
8.2.1. &, Control-z y fg<br />
En UNIX, se puede ejecutar un programa trasfondo, es decir, sin “bloquear” el terminal por lo<br />
cual se lanza la instrucción. Por ejemplo, para abrir emacs, si el terminal está gráfico, abre una<br />
v<strong>en</strong>tana nueva para emacs, pero el terminal ya no acepta más instrucciones. Al añadir “&” al fin<br />
de la instrucción, el programa inicia trasfondo:<br />
> emacs &<br />
[1] 7286<br />
><br />
La v<strong>en</strong>tana donde está emacs funciona, y además la v<strong>en</strong>tana terminal queda disponible para<br />
acceso. Nota que <strong>en</strong> cualquier caso no se puede cerrar la v<strong>en</strong>tana terminal sin afectar a los programas<br />
iniciados desde ella.