在文件之间交叉引用时未找到 .aux 文件或该文件为空

在文件之间交叉引用时未找到 .aux 文件或该文件为空

我有一个类似的问题一。与该线程相反,我使用 xelatex。但不知道这是否是问题所在。我有两个文件。在第一个文件(Characteristics.tex)中,我有:

% Language specific stuff
\usepackage[cm-default]{fontspec}
\defaultfontfeatures{Ligatures=TeX}
\setmainfont{Times New Roman}
\newfontfamily\cyrillicfont{Times New Roman}
\usepackage{polyglossia}
\setdefaultlanguage{russian}
\setotherlanguage{english}

% Cross-referencing stuff
\usepackage{hyperref}
\usepackage{nameref}
\usepackage{zref-xr,zref-user}
\zexternaldocument*{Names}

第二个文件(Names.tex)也类似:

% Language specific stuff
\usepackage[cm-default]{fontspec}
\defaultfontfeatures{Ligatures=TeX}
\setmainfont{Times New Roman}
\newfontfamily\cyrillicfont{Times New Roman}
\usepackage{polyglossia}
\setdefaultlanguage{russian}
\setotherlanguage{english}

% Cross-referencing stuff
\usepackage{hyperref}
\usepackage{nameref}
\usepackage{zref-xr,zref-user}
\zexternaldocument*{Characteristics}

实际上,到目前为止,只有第二个文件包含对第一个文件的引用。因此,当我使用 xelatex 编译它时,我得到了

Package zref-xr Warning: File `Characteristics.aux' not found or empty

结果是

LaTeX Warning: There were undefined references.

我检查过,.aux 文件存在且不为空。如果这很重要,我会使用\label{}来指示标签(目前仅在 Characteristics.tex 中)和\ref{}\zref{}\nameref{}来调用引用。这些在同一个文件中可以完美运行,但不适用于两个文件之间的交叉引用。有人知道如何解决这个问题吗?

相关内容