It seems that you are using the chapterbib
package to produce your multiple bibliographies. The error messages that you are getting suggests that you are not compiling your document correctly.
I'll explain how to compile your document with a simple example; I'll assume that your main document is called test.tex
and looks like this:
\documentclass{report}
\usepackage{chapterbib}
\begin{document}
\include{chapter1}
\include{chapter2}
\end{document}
The file chapter1.tex:
\chapter{Foo}
Some text and a reference to \cite{goossens93}. But also have a look in \cite{knuth79}...
\bibliographystyle{plain}
\bibliography{references}
The file chapter2.tex:
\chapter{Bar}
Some text and a reference to \cite{lamport94}. But also have a look in \cite{knuth79}...
\bibliographystyle{plain}
\bibliography{references}
The database references.bib:
@book{goossens93,
author = "Michel Goossens and Frank Mittlebach and Alexander Samarin",
title = "The Latex Companion A",
year = "1993",
publisher = "Addison-Wesley",
address = "Reading, Massachusetts"
}
@book{knuth79,
author = "Donald E. Knuth",
title = "Tex and Metafont, New Directions in Typesetting",
year = {1979{(}1950{)}},
publisher = "American Mathematical Society and Digital Press",
address = "Stanford"
}
@book{lamport94,
author = "Leslie Lamport",
title = "Latex: A Document Preparation System",
year = "1994",
edition = "Second",
publisher = "Addison-Wesley",
address = "Reading, Massachusetts"
}
You have to compile your document in the following way:
pdflatex test
bibtex chapter1
bibtex chapter2
pdflatex test
pdflatex test
In your actual document, as a first step, you'll need to remove the auxiliary files to prevent possible inherited errors.
Here's a biblatex
solution that satisfies your main requirement -- a combination of local bibliographies and a global one, with congruent local/global entry labels. However, instead of individual .bib
files for each section I use a global file including special keywords
fields to indicate an entry's affiliation with one or several sections.
\documentclass{article}
\usepackage[style=alphabetic]{biblatex}
\defbibheading{subbibforsec}[\refname\ for section~\thesection]{%
\subsection*{#1}}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@misc{A01,
keywords = {foo,bar},
author = {Author, A.},
year = {2001},
title = {Alpha},
}
@misc{B02x,
keywords = {foo},
author = {Buthor, B.},
year = {2002},
title = {Bravo},
}
@misc{B02y,
keywords = {bar},
author = {Buthor, B.},
year = {2002},
title = {Bravissimo},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\nocite{*}
\begin{document}
\section{Foo}
Some text \autocite{B02x}.
\printbibliography[heading=subbibforsec,keyword=foo]
\section{Bar}
Some text \autocite{B02y}.
\printbibliography[heading=subbibforsec,keyword=bar]
\printbibliography
\end{document}
Best Answer
Using
biblatex
will give you more or less the power and benefits from all specialized packages combined in one, the only drawback is that many journals do not acceptbiblatex
, but in my experience that is also the case forbibtex
. For your PhD thesis, you are free to choose, so I would recommendbiblatex
, because it is powerful and flexible.Below is a working example, mainly copied form Herberts example.
You just have to run
pdflatex
-biber
-pdflatex
to see the output.Some more comments:
biblatex
does not use theaux
file, so you can useinclude
orinput
as you prefer.biblatex-examples.bib
is a file that is included with all major distributions, use a different name for your own.bib
file.If you want to learn more, take a look at these examples or start reading some of the biblatex questions, for example this one or this one.