To create a bibliography for your document, you need to perform a sequence of steps, some of which seem a bit odd. If you choose to use BibTeX, the sequence is:
First: you need a BibTeX bibliography file (a
file) - see "creating a BibTeX file".
Second: you must write your LaTeX document to include a declaration of the “style” of bibliography, citations, and a reference to the bibliography file mentioned above. So we may have a LaTeX file containing:
Note: we have bibliography style plain, above, which is nearly the simplest of the lot: a sample text, showing the sorts of style choices available, can be found on Ken Turner's web site: http://www.cs.stir.ac.uk/~kjt/software/latex/showbst.html
Third: you must process the file.
As LaTeX processes the file, the
writes a note of the style to the
aux file; each
\cite command writes a note of the citation to the
aux file, and the
\bibliography command writes a note
bib file is to be used, to the
Note that, at this stage, LaTeX isn't “resolving” any of the
citations: at every
\cite command, LaTeX will warn you of the
undefined citation, and when the document finishes, there will be a
further warning of undefined references.
Fourth: you must run BibTeX:
Don't try to tell BibTeX anything but the file name: say
bibtex myfile.aux (because you know it's going to read the
aux file) and BibTeX will blindly attempt to process
BibTeX will scan the
aux file; it will find which bibliography
style it needs to use, and will “compile” that style; it will note
the citations; it will find which bibliography files it needs, and
will run through them matching citations to entries in the
bibliography; and finally it will sort the entries that have been
cited (if the bibliography style specifies that they should be
sorted), and outputs the resulting details to a
Fifth: you run LaTeX again. It warns, again, that each citation is
(still) undefined, but when it gets to the
it finds a
bbl file, and reads it. As it encounters each
\bibitem command in the file, it notes a definition of the
Sixth: you run LaTeX yet again. This time, it finds values for all
the citations, in its
aux file. Other things being equal, you're
done… until you change the file.
If, while editing, you change any of the citations, or add new ones, you need to go through the process above from steps 3 (first run of LaTeX) to 6, again, before the document is once again stable. These four mandatory runs of LaTeX make processing a document with a bibliography even more tiresome than the normal two runs required to resolve labels.
To summarise: processing to resolve citations requires: LaTeX; BibTeX; LaTeX; LaTeX.