[Makefile] LaTeX

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

  1. Modérateur
    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
    1. Modérateur
      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."
      
      1. 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 !