18

I have a big problem with Latex. I tried to install biblatex to create a bibliography. Since I had some trouble with the .bib file, I deleted the last command I inserted, such as \usepackage{biblatex} and \addbibresource{sample.bib}, \printbibliography. Now Latex does not compile the pdf document anymore and I get the following error. What should I do? Maybe trying to uninstall the package biblatek? Thank you.

19
Undefined control sequence.
l.19 \abx@aux@refcontext
                        {nty/global//global/global}
5
  • 3
    that is presumably line 19 of the aux file, first try deleting the aux file and see if that fixes the problem. Commented May 1, 2019 at 20:51
  • 1
    If you are not loading biblatex any more the command \abx@aux@refcontext and many other biblatex-defines stuff will be undefined. Those commands can, however, still persist in the temporary files (mainly .aux). Delete all auxiliary files and recompile from scratch. The error should be gone.
    – moewe
    Commented May 1, 2019 at 20:54
  • Thank you, that fortunately worked!
    – Nenne
    Commented May 1, 2019 at 20:54
  • I am a novice and I didn't know that. Thank you, you helped me a lot.
    – Nenne
    Commented May 1, 2019 at 20:56
  • try to recompile your whole project by choosing the recompiled from scratch.
    – M. Yousif
    Commented Oct 13, 2022 at 8:09

1 Answer 1

20

tl;dr Delete the temporary .aux, .bbl, .bcf files and recompile from scratch.


LaTeX basically reads your document from beginning to end and cannot skip forward when processing your file. In order to be able to act on stuff that happens later in your document, LaTeX 'remembers' certain things from earlier LaTeX runs by writing them to so-called auxiliary or temporary files. That is the reason why for some things you need to run LaTeX multiple times to get things right. (For example for labels, see Understanding how references and labels work.) The most important auxiliary file is the .aux file. The .aux file is read quite early on when your document is processed and contains information from the previous LaTeX run.

The fact that the .aux file was produced by the previous run becomes crucial here. When you load biblatex, that package writes certain commands into the .aux file to help typesetting the bibliography and citations as expected. Those commands are defined by biblatex and will be executed on the next run to make sure everything looks nice.

If you no longer load biblatex and run LaTeX with an .aux file produced by the previous run where biblatex was still loaded, the .aux file will contain references to biblatex macros that are now unknown to LaTeX (you haven't loaded biblatex, after all).

Errors like this can swiftly be resolved by deleting all temporary and auxiliary files (.aux, .bbl, .bcf, ...) and running a full compilation cycle from scratch. Deleting the auxiliary files is safe since they will be recreated in the next run of LaTeX (or the relevant helper program).

0

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .