[Makefile] LaTeX

trinity666 Messages postés 131 Statut Membre -  
mamiemando Messages postés 34184 Statut Modérateur -
bonjour

voici mon makefile je ne comprends pas pkoi les fichiers .dvi sont effaces automatiquement

LIB=eps
FIG2DEV=$(shell which fig2dev)
DVIPS=$(shell which dvips)
FLAGDVI=-o
FIG=$(shell ls *.fig)
TEX=$(shell ls *.tex)
EPS=$(FIG:.fig=.eps)
DVI=$(TEX:.tex=.dvi)
PS=$(DVI:.dvi=.ps)
DVIFLAGS=$(-t -a4 -o)
LATEX=$(shell which latex)

.SUFFIXES:
.SUFFIXES:.ps .aux .eps .dvi .fig .tex

all: compile

compile: $(EPS) $(PS)


.fig.eps:
fig2dev -Leps $< $@



# $(FIG2DEV) -L$(LIB) $(FIG) $(EPS)

#$(DVI:.tex=.dvi): $(TEX)
# latex $(TEX)


.tex.dvi:
-latex $< $*.dvi


.dvi.ps:
$(DVIPS) $< $*.ps

clean:
-/bin/rm -f *.dvi *.aux *.log *.eps *.bak *~ core


veryclean:clean
-rm -f *.ps



merci par avance de votre aide

2 réponses

mamiemando Messages postés 34184 Statut Modérateur 7 888
 
Je te propose d'utiliser plutôt ce makefile (bourrin, mais bon, il marche :p) :

#BASE=/cygdrive/c/texmf/miktex/bin/

BASE=/usr/bin/

LATEX2DVI=${BASE}latex
MKIDX=${BASE}makeindex
DVI2PS=${BASE}dvips
PS2PDF=${BASE}ps2pdf
BIBTEX=${BASE}bibtex
PDFLATEX=${BASE}pdflatex
MAIN=note


%.dvi: %.tex %.bib *.tex
    ${MKIDX} ${MAIN}.tex
    ${LATEX2DVI} ${MAIN}.tex
    ${BIBTEX} ${MAIN}
    ${BIBTEX} ${MAIN}
    ${LATEX2DVI} ${MAIN}.tex
    ${BIBTEX} ${MAIN}
    ${LATEX2DVI} ${MAIN}.tex

%.ps: %.dvi
    ${DVI2PS} ${MAIN}.dvi -o ${MAIN}.ps


%.pdf: *.bib *.tex
    ${MKIDX} ${MAIN}.tex
    ${PDFLATEX} ${MAIN}.tex
    ${BIBTEX} ${MAIN}
    ${BIBTEX} ${MAIN}
    ${PDFLATEX} ${MAIN}.tex
    ${BIBTEX} ${MAIN}
    ${PDFLATEX} ${MAIN}.tex
    #${PS2PDF} ${MAIN}.ps

all: ${MAIN}.pdf
    @echo "OK"

view: all
    kpdf ${MAIN}.pdf &

clean:
    rm -f ${MAIN}.pdf ${MAIN}.ps ${MAIN}.dvi ${MAIN}.ilg ${MAIN}.ind ${MAIN}.log  ${MAIN}.blg ${MAIN}.bbl    ${MAIN}.aux  ${MAIN}.text.flc *~


distclean: clean
    rm -f ${MAIN.pdf} ./.pdf
    @echo "OK."
0
thephoenix1 Messages postés 322 Statut Membre 16
 
Merci.
Heu..........quel fichier dois je editer? ou alors, je fais un copier coller de tout ça et j'enregistre le fichier ou? avec quel nom?

Merci pour le conseil !
0
mamiemando Messages postés 34184 Statut Modérateur 7 888
 
La solution que je te propose s'affranchit d'un environnement latex (comprendre : tu rédiges ton fichier tex avec un éditeur ordinaire, par exemple vim, emacs ou ce que tu veux).

Elle consiste à copier coller le code que je t'ai indiqué dans un fichier nommé "Makefile". Il faut simplement remplacer la balise :
MAIN=note

... par "MAIN=pouet" si par exemple ton fichier latex s'appelle pouet.tex.

Pour compiler tu ouvres une console dans ce répertoire et tu tapes simplement :
make

Bonne chance
0