![arXiv:未定义的参考和引文,无法转换为 PDF](https://linux22.com/image/405705/arXiv%EF%BC%9A%E6%9C%AA%E5%AE%9A%E4%B9%89%E7%9A%84%E5%8F%82%E8%80%83%E5%92%8C%E5%BC%95%E6%96%87%EF%BC%8C%E6%97%A0%E6%B3%95%E8%BD%AC%E6%8D%A2%E4%B8%BA%20PDF.png)
我无法.bbl
通过 arXiv 的 TeX 提交处理带有参考书目的简单 LaTeX 文件(作为文件)。我使用acmart
的格式使用natbib
,它在 Overleaf 上编译得很好。使用 arXiv 时,它会在日志中警告我的参考文献和引文未定义,并且在处理页面的顶部显示“无法转换为 pdf”。
以下是我在文件中尝试处理的示例main.tex
:
\documentclass[acmsmall,nonacm,screen,review,anonymous,10pt]{acmart}
\settopmatter{printfolios=true,printacmref=false}
% This fixes a different, unrelated issue
\makeatletter
\providecommand{\mdseries@tt}{}
\makeatother
\title{This Be The \TeX}
\begin{document}
\maketitle
\section{Introduction}\label{sec:intro}
This is the introduction, \autoref{sec:intro}. Take a look at \cite{coq}.
\bibliographystyle{ACM-Reference-Format}
\bibliography{biblio}
\end{document}
我还有一个00README.XXX
文件,其中有一行,nohypertex
因为 ACM 的加载hyperref
与 arXiv 的加载发生冲突。
我有以下参考书目biblio.bib
:
@misc{coq,
author = {The Coq Development Team},
title = {The Coq Proof Assistant, version 8.9.0},
month = jan,
year = 2019,
doi = {10.5281/zenodo.2554024},
url = {https://doi.org/10.5281/zenodo.2554024}
}
main.bbl
在 Overleaf 上使用“提交”>“arXiv”,它会在 zip 文件中给出以下内容:
%%% -*-BibTeX-*-
%%% Do NOT edit. File created by BibTeX with style
%%% ACM-Reference-Format-Journals [18-Jan-2012].
\begin{thebibliography}{1}
%%% ====================================================================
%%% NOTE TO THE USER: you can override these defaults by providing
%%% customized versions of any of these macros before the \bibliography
%%% command. Each of them MUST provide its own final punctuation,
%%% except for \shownote{}, \showDOI{}, and \showURL{}. The latter two
%%% do not use final punctuation, in order to avoid confusing it with
%%% the Web address.
%%%
%%% To suppress output of a particular field, define its macro to expand
%%% to an empty string, or better, \unskip, like this:
%%%
%%% \newcommand{\showDOI}[1]{\unskip} % LaTeX syntax
%%%
%%% \def \showDOI #1{\unskip} % plain TeX syntax
%%%
%%% ====================================================================
\ifx \showCODEN \undefined \def \showCODEN #1{\unskip} \fi
\ifx \showDOI \undefined \def \showDOI #1{#1}\fi
\ifx \showISBNx \undefined \def \showISBNx #1{\unskip} \fi
\ifx \showISBNxiii \undefined \def \showISBNxiii #1{\unskip} \fi
\ifx \showISSN \undefined \def \showISSN #1{\unskip} \fi
\ifx \showLCCN \undefined \def \showLCCN #1{\unskip} \fi
\ifx \shownote \undefined \def \shownote #1{#1} \fi
\ifx \showarticletitle \undefined \def \showarticletitle #1{#1} \fi
\ifx \showURL \undefined \def \showURL {\relax} \fi
% The following commands are used for tagged output and should be
% invisible to TeX
\providecommand\bibfield[2]{#2}
\providecommand\bibinfo[2]{#2}
\providecommand\natexlab[1]{#1}
\providecommand\showeprint[2][]{arXiv:#2}
\bibitem[\protect\citeauthoryear{Team}{Team}{2019}]%
{coq}
\bibfield{author}{\bibinfo{person}{The Coq~Development Team}.}
\bibinfo{year}{2019}\natexlab{}.
\newblock \bibinfo{title}{The Coq Proof Assistant, version 8.9.0}.
\newblock
\newblock
\urldef\tempurl%
\url{https://doi.org/10.5281/zenodo.2554024}
\showDOI{\tempurl}
\end{thebibliography}
最后,我从 arXiv 获得的日志是这里。
我在这里遗漏了什么?我不知道是否hyperref
或natbib
是否造成了问题,或者是否是其他问题。我想在中提交我的论文acmsmall
,所以我希望解决方案不会涉及干扰它或其他 ACM 选项。
答案1
正如评论所说,警告只在第一次运行时出现,并在后续运行时消失。通过\pdfoutput=1
在主文件的开头添加“无法转换为 PDF”错误已得到修复。