1

I downloaded the source of a paper from arXiv, and extracted the files, using 7-zip. I've ended up with a tex file, and a bbl file. I then uploaded them to overleaf.

When I click recompile, the paper is created almost perfectly. The bibliography, however doesn't work. I get the error "cannot find bibliography.bib".

My question is: can I get the bibliography to work somehow?

I've already searched for answers, but the majority of questions are about the opposite problem- going from an overleaf project to submitting to arXiv. I want to go the other way: download source from arXiv, and run it on overleaf.

3
  • 2
    Can you link to the specific paper on arxiv so we can check if the bib file is available? Commented Oct 17, 2023 at 11:06
  • 4
    a bbl file is not a bib file it is the output generated from bib by bibtex. You can use that directly via \input instead of using \bibliography or there may be a bib file in the arxiv source zip Commented Oct 17, 2023 at 11:09
  • arxiv.org/format/2310.09182 I put \input{the bbl file} but that failed to recompile. Commented Oct 17, 2023 at 12:19

1 Answer 1

6

The file uses biblatex, and the author has not provided the bib file.

Fortunately ctan has a package that addresses exactly this.

Add biblatex-readbbl after biblatex eg after the %LT-SKIP-END comment in this example

%%% LT-SKIP-END
\usepackage[bblfile=\jobname]{biblatex-readbbl}

The document then processes without error, using the pre-made bbl file.

enter image description here


You may find (including in comments under this question) suggestions to replace \bibliography{..} by \input{\jobname.bib} but that only applies to classic bibtex use, not biblatex.


As noted in comments:

  • On Overleaf you may need to replace \jobname by the name of the .bbl file (without the .bbl extension), so in the OP's real example [bblfile=DC-LPPL-LI].

  • Also, if the document is old (at whatever point you are reading this) the .bbl file may not be compatible with the version of biblatex in the current texlive, however you can use the overleaf menu to process your project with a texlive of a suitable date. (At the time of writing Overleaf offer texlive versions from 2014 to 2023).

7
  • Hey thanks for the reply. I pasted the line "\usepackage[bblfile=\jobname]{biblatex-readbbl} " in the line below %%% LT-SKIP-END, in the main latex file. That didn't work. Did I misunderstand your answer? Commented Oct 17, 2023 at 22:17
  • @SeanThrasher ah overleaf messes with jobname sorry use [bblfile=DC-LPPL-LI] on overleaf (I tested on a local installation) Commented Oct 17, 2023 at 22:34
  • This will only work as long as the biblatex versions used to generate the .bbl file and the biblatex version you use to compile the document later are not too different (more precisely if the share the .bbl file version). Sometimes new developments in biblatex require changes to the .bbl structure. So a more sustainable long-term solution would be to try and obtain actual .bib data for the relevant entries.
    – moewe
    Commented Oct 18, 2023 at 5:43
  • @moewe hmm yes thanks for adding this warning, although I'm not sure saying it's impossible to use the arxiv source and you need to contact the author is quite the answer the op wanted. for some documents it's probably easier to locate an older copy of biblatex (as overleaf has all texlive 2014 - 2023) Commented Oct 18, 2023 at 6:23
  • 1
    as noted above on overleaf you can't use \jobname use [bblfile=aaaa] where aaaa.bib is the name of the bib file in the download from arxiv but that file is not using biblatex, so simply replace \bibliography{tomography} by \input{main.bbl} @SeanThrasher there is no "general" fix, you are basically fixing errors in the tex source provided by authors that do not run as provided. Commented Nov 5, 2023 at 12:30

You must log in to answer this question.

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