Ok, I think I got something.

Indeed, setting org-latex-pdf-process to

'("pdflatex -output-directory %o %f"
  "bibtex %b" "pdflatex -output-directory %o %f"
  "pdflatex -output-directory %o %f")

produces the correct pdf output. I think I have a hint of the reason for
this.

When exporting to a LaTeX file, and then compiling, the keybinding "C-c
C-a" invokes TeX-command-run-all, which in turn invokes
TeX-command-sequence, which in turn invokes TeX-command-default: this is an 
elisp function that
basically replaces the work of latexmk, checking the timestamps of files
and deciding wether to use bibtex or biber. Here's the snippet:
           (if (bound-and-true-p LaTeX-using-Biber)
               TeX-command-Biber TeX-command-BibTeX))

So, latexmk is never actually called!

The point is that natbib needs bibtex to be called: in fact setting
org-latex-pdf-process to manually call it produces the correct output,
and setting it to call biber instead produces the "(?)" (as well as an
empty .bbl file).

So, shall we conclude that latexmk has an issue with correctly
recognizing natbib and calling bibtex?

Alessandro

Reply via email to