我从这个脚本开始:
\documentclass{article}
\usepackage[backend=bibtex]{biblatex}
\addbibresource{bibtextest.bib}
\begin{document}
See \cite{somebook}
\printbibliography
\end{document}
使用 bibtextbib.bib:
@book{somebook,
author = "Some author",
publisher = "Publisher",
title = "{Title}",
year = "1997",
}
它可以很好地编译并输出:
但是,我看到一个警告:
Package biblatex Warning: Using fall-back BibTeX(8) backend:
(biblatex) functionality may be reduced/unavailable.
警告:“使用后备 BibTeX(8) 后端:(biblatex)功能可能会减少/不可用。”建议我尝试用 替换backend=bibtex
。backend=biber
但是,这会导致未定义的引用:
Biblatex 与 Biber:配置我的编辑器以避免未定义的引用没有帮助,因为我通过命令行参数pdflatex
/xelatex
和进行编译bibtex
。
如何避免使用命令行编译 biber 时出现未定义的引用?
答案1
您backend=biber,
需要backend=bibtex,
在文档上运行 Biber,而不是 BibTeX。假设您的文档doc.tex
名为
pdflatex doc
biber doc
pdflatex doc
pdflatex doc
而不是pdflatex doc
、bibtex doc
、pdflatex doc
、pdflatex doc
。 (pdflatex
当然,其中 可以用您最喜欢的 LaTeX 风格替换:latex
、lualatex
、xelatex
。)。
运行 BibTeX 而不是 Biber 时常见的错误是
This is BibTeX, Version 0.99d (MiKTeX 2.9.7250 64-bit)
The top-level auxiliary file: doc.aux
I found no \citation commands---while reading file doc.aux
I found no \bibdata command---while reading file doc.aux
I found no \bibstyle command---while reading file doc.aux
(There were 3 error messages)
错误
ERROR - Error: Found biblatex control file version 3.5, expected version 3.4.
This means that your biber (2.9) and biblatex (3.12) versions are incompatible.
意思就是:安装的 Biber 和biblatex
版本不兼容。删除所有临时文件(.aux
、.bbl
、.bcf
、 ...)并彻底、正确地更新 TeX 系统(参见我如何更新我的 TeX 发行版?)。