# Making sense of compile error logs

Is there a documentation somewhere which gives a gentle guidance on interpreting error logs?

Sometimes it is really hard to figure out how to correct something judging by the log and it would be useful to know some tricks for this, I think.

EDIT:

A user has suggested a good wikibook and this seems to have some helpful hints (same goes for the latex companion suggested) but there is still a lot of mystery in the contents of these log files.

Moreover, It is a bit confusing that there are so many ways to compile the document dvi, pdflatex, conteXt etc. Why is this? Simple evolution or is there some special reason to compile one way over another? I get the fact that bibtex needs to be compiled separately but other than that I am a bit confused by the amount of choice here. What files(and where are they) are getting called during this?

-
Do you mean something like the wikibook and the FAQ? (search for "common errors" in the page) – Torbjørn T. Feb 11 '13 at 21:34
@Magpie the log file contains all kinds of information, from TeX itself or from the LaTeX format or from packages loaded, you probably need to give some explicit examples of the kinds of things that are confusing you and for which you want help. – David Carlisle Feb 11 '13 at 21:59
The book `LaTeX Companion` has in chapter B a list of error messages and explanations. ISBN-13: 978-0201362992 – Kurt Feb 11 '13 at 22:09
@Kurt I have this book! I am going to test what you say. – Magpie Feb 13 '13 at 4:56
I find the UK List of TeX FAQs useful. Here is its advice on errors: tex.ac.uk/cgi-bin/texfaq2html?label=erroradvice – kahen Feb 28 '13 at 0:58

The answer is indeed 'evolution'. Here a brief summary:

• Donald Knuth initially developed TeX starting around 1977, because he was unhappy about how his books looked like.
• By that time, the document formats PS and PDF were not existent, just DVI
• DVI was developed from 1979 onwards
• PS was developed from 1984 onwards
• PDF was developed from 1993 onwards
• LaTeX development started 1980 (Laslie Lamport)
• First way to obtain a document from .tex files was: `latex doc.tex` obtaining a DVI
• Later on, after PS was developed, you could then type `dvips doc.dvi` to obtain a PS
• All three document formats share similar goals. Though, their implementation is different. Not all features in one document format can be represented in the format of another.
• Since 2000, we have pdftex/pdflatex to create a PDF directly from a .tex file

For that simple fact (different file formats), the features and graphics that can be included differ. For instance:

• DVI/PS can only make use of (E)PS graphics
• PDF can basically make us of any other file format than (E)PS, for instance: PDF, JPG, PNG, ...

PDF allows many new features that cannot be implemented using PS. In contrast to that, there are many LaTeX-packages that make heavy use of PS features, e.g., `pstricks`.

Depending on your requirements, you have to choose one or the other file format. In case you must use `pstricks`, the only (clean) way to do so is to use latex/dvips. In any other case I would probably recommend pdflatex to typeset the document.

'Recently', the development of pdflatex successors started, primarily to overcome architectural limitations of the 'old' pdflatex way to do some things. Most notably:

• LuaTeX
• XeTeX

In contrast to that, ConTeXt is 'only' a macro-package (like LaTeX compared to TeX). It is not a typesetting engine like pdftex, luatex or xetex. There is an excellent posting explaining the details right here: Differences between LuaTeX, ConTeXt and XeTeX

Sadly, all of this contributes to the difficulties some have in interpreting their error logs.

Finally, to answer the last part of your question concerning bibtex: I would argue, that the preparation of a useful bibliography is not the task of the typesetting system. Therefore an extra program is required to process a 'data base' (the bib file) and output the necessary information that can be used by the typesetting engine itself (e.g., pdftex). Of course, an all-in-one solution may be preferred but this is probably owed to the evolutionary process of (La)TeX, too.

-