[Tex/LaTex] No `\citation`, `\bibdata` or `\bibstyle` command


I am following the biblatex in a nutshell (for beginners) and meet this error during compiling BiBTeX:

This is BibTeX, Version 0.99d (MiKTeX 2.9.6500) The top-level auxiliary file: test.aux I found no \citation commands---while reading file test.aux I found no \bibdata command---while reading file test.aux I found no \bibstyle command---while reading file test.aux (There were 3 error messages)

I find no \citation, \bibdata or \bibstyle command in my script as suggested from TeXmaker. Do you know what's wrong? The code is:


test test\cite{dym_fourier_1972}

I find this (duplicate?) question but I don't understand it: No \citation, \bibdata, \bibstyle commands

Best Answer

There are two engines to read .bib files:

  • BibTex. This is the old one and is the default engine used by TeXmaker
  • Biber. This is the new engine and is used in my example

I find there are three sources of confusion that newcomers of Biber may have:

  • The file .bib is commonly called as a "bibtex" file, but it's an inherited name from the old engine, and should be perceived as having no relation to the BibTeX engine now
  • Commands intended to be used by BibTeX can be used by Biber, thanks to the biblatex package for supporting both engines
  • Biber, BibTex, biblatex... bi bi bi (ಠ_ಠ)

You can read more on the history here.

Here is how to fix this:

1. Make sure the editor running Biber, not BibTeX

For TeXmaker:

For other editors, see: Biblatex with Biber: Configuring my editor to avoid undefined citations.

2. Run LaTeX → Biber → LaTeX

Make sure you use Biber commands to print bibliography:

  • \usepackage{biblatex}
  • \addbibresource{filename.bib}
  • \printbibliography

Do not use \bibliography or \bibliographystyle as they belong to BibTeX.

Read more: Getting Started with Biblatex

Related Question