Ошибка при обработке латекса

Я хочу выполнить следующий Makefile:

main.pdf: main.tex main.bib
pdflatex main.tex
bibtex main.aux
pdflatex main.tex
pdflatex main.tex

Это происходит с этого сайта: http://en.wikibooks.org/wiki/LaTeX/Bibliography_Management.

Я набираю команду "make" в том же каталоге и получаю следующее сообщение об ошибке:

make: *** Нет правила, чтобы сделать цель main.bib', needed bymain.pdf. Стоп.

Я не знаю, как действовать. Этот сайт с сообщениями об ошибках мне не помогает.

Я использую Ubuntu 14.04

Привет!

2 ответа

Вы должны сделать отступ, начиная с pdflatex, потому что они являются правилами для достижения цели. Подсказка здесь https://stackoverflow.com/questions/1739434/whats-wrong-with-this-makefile

Рабочая Makefile будет:

main.pdf: main.tex main.bib
    pdflatex main.tex
    bibtex main.aux
    pdflatex main.tex
    pdflatex main.tex

обратите внимание, что вы не можете просто скопировать и вставить объект, потому что первый символ в командной строке ДОЛЖЕН быть физическим символом "TAB" (ascii code 8). Как его ввести, зависит от вашего редактора. vim следует автоматически переключаться в режим защиты вкладок при редактировании make-файла, но других редакторов я не знаю.

Синтаксис Makefile, смешно.

Я от всей души предлагаю использовать что-то вроде latexmk (в стандартных репо), чтобы сделать работу; это позаботится о зависимостях и многократных проходах довольно хорошо.

Другие вопросы по тегам