带有 Bib 书目编译错误的 TeX 文件

带有 Bib 书目编译错误的 TeX 文件

我有以下目录:

/run.py
  /doc
     main.tex
     reference.bib

在 中main.tex,我有一个参考文献,应该显示 bib 文件中的参考文献部分。我也在中\bibliography{reference}使用过。总而言之,应该显示参考文献部分,因为我已经在 Overleaf 上测试过它,并且它在同一级目录中正确显示。\cite{something}main.texmain.texreference.bib

现在我尝试.tex使用 Python 在我的计算机上编译该文件。在里面run.py,我有代码subprocess.call(["pdflatex", "./doc/main.tex"]),并且正在目录中运行该代码run.py。但是该代码会产生错误,指出未找到引用的参考:

LaTeX Warning: Citation `something' on page 1 undefined on input line 104.


! LaTeX Error: Something's wrong--perhaps a missing \item.

See the LaTeX manual or LaTeX Companion for explanation.
Type  H <return>  for immediate help.
 ...

l.117 \end{mcsection}

并且编译后的PDF文件不显示参考部分。

我尝试过\bibliography{reference.bib},,,它们都产生\bibliography{doc/reference}相同\bibliography{./doc/reference.bib}的错误。我做了一些研究其中说我应该使用进行编译bibtex,因此我尝试了以下代码:

    subprocess.call(["pdflatex", "./doc/card.tex"])
    subprocess.call(["bibtex", "./doc/reference.bib"])
    subprocess.call(["pdflatex", "./doc/card.tex"])
    subprocess.call(["pdflatex", "./doc/card.tex"])

这仍然会产生同样的错误。

答案1

我调用了bibtex错误的文件。应该是

    subprocess.call(["pdflatex", "./doc/card.tex"])
    subprocess.call(["bibtex", "card"])
    subprocess.call(["pdflatex", "./doc/card.tex"])
    subprocess.call(["pdflatex", "./doc/card.tex"])

因此它在生成的 pdf 文件上运行 bibtex。

相关内容