2015-11-16 2 views
0

Я пытаюсь использовать следующий файл Makefile для компиляции проекта LaTeX.Что случилось с этим Makefile и LaTeX?

# LaTeX Makefile 
FILE=Tesis 
all: $(FILE).pdf 
.PHONY: clean 
clean: 
     rm *.aux *.blg *.out *.bbl *.log *.dvi *.idx *.lof *.toc *.pdf 
$(FILE).pdf: $(FILE).tex 
$(FILE).tex: Generalidades.tex Analisis.tex Diseno.tex Construccion.tex Conclusiones.tex Tesis.bib 
     latex $(FILE).tex 
     bibtex $(FILE) 
     latex $(FILE) 
     dvipdfm $(FILE).dvi 

Файл Tesis.pdf не существует. Однако после выполнения работы я получаю:

make: Nothing to be done for `all' 

Что не так? Благодарю.

ответ

1

Ваша зависимость

$(FILE).pdf: $(FILE).tex 

не имеет правила, связанные с ним - отсутствует последовательность зазубренных строк, которые говорят make, как сделать PDF из файла .tex. Это означает, что он будет всегда быть в курсе последних событий.

Ваша вторая зависимость, с другой стороны:

$(FILE).tex: Generalidades.tex Analisis.tex ... 
    latex $(FILE).tex 

говорит «$ (FILE) .tex зависит от Generalidades.tex Analisis.tex ..., и сделать его [т.е. .tex файл] обновить, запустить латекс '. Это не то, что вы имеете в виду.

Попробуйте

$(FILE).pdf: $(FILE).tex Generalidades.tex Analisis.tex ... 
    latex $(FILE).tex 
    ... 

(Кстати, если вы используете pdflatex, то вы можете создать файл PDF непосредственно из .tex источника. Вы должны будете использовать .pdf фигуры, а не .eps из них, но это легко для преобразования .eps цифр в .pdf).

Смежные вопросы