交叉引用的方程式永远不会被定义

交叉引用的方程式永远不会被定义

我在交叉引用方程式时遇到了一个奇怪的问题:无论我运行 pdflatex 的频率如何,它们都保持未定义状态。其他引用确实得到解决。

我标记方程的方式有问题吗?Pdflatex 对此没有抱怨(除了在尝试引用它时报告它未定义)。

编辑:按照下面的要求,我制作了一个最小的工作示例。从中我了解到问题似乎是 amsmath 和 ntheorem 包之间的冲突。不包括其中一个包即可解决问题。

例如考虑以下例子:

\documentclass{article}
\usepackage{amsmath}
\usepackage[thmmarks]{ntheorem}

\begin{document}

\section{My Section}
\label{sec:MySection}

\begin{equation} \label{eq:MyEquation}
a = b
\end{equation}

Reference my section \ref{sec:MySection}.
Reference my equation \ref{eq:MyEquation}.

\end{document}

渲染结果如下:

不工作

答案1

amsmath您需要的附加选项,请参阅的ntheorem“3.2.1 amsmath”ntheorem文档

\documentclass{article}
\usepackage{amsmath}
\usepackage[thmmarks,amsmath]{ntheorem}

\begin{document}
\setcounter{section}{4}
\section{My Section}
\label{sec:MySection}

\begin{equation} \label{eq:MyEquation}
a = b
\end{equation}

Reference my section \ref{sec:MySection}.
Reference my equation \ref{eq:MyEquation}.

\end{document}

结果

相关内容