하위 파일: name{theorem.0.1}이 참조되었지만 존재하지 않으며 수정된 이름으로 대체되었습니다.

하위 파일: name{theorem.0.1}이 참조되었지만 존재하지 않으며 수정된 이름으로 대체되었습니다.

온라인에서 이 문제를 해결한 해결책을 찾을 수 없었기 때문에 여기 누군가가 나를 도와줄 수 있기를 바랍니다 :)

내 main.tex 파일은 다음과 같습니다.

\documentclass[a4paper,12pt,headsepline]{article}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage{mathtools}
\usepackage[a4paper,left=3.125cm, right=3.125cm, top=2.5cm, bottom=3.0cm]{geometry}
\usepackage{filecontents}
\renewcommand{\baselinestretch}{1.3}
\usepackage{graphicx}
\usepackage{amsthm}
\usepackage{amssymb} 
\usepackage{caption}
\usepackage{cite}
\usepackage{float}
\usepackage{subfiles}
\usepackage{xr} 
\usepackage[breaklinks=true]{hyperref}

\usepackage{amsmath}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{corollary}{Corollary}[theorem]
\newtheorem{lemma}[theorem]{Lemma} 

\externaldocument[X-]{file1}
\externaldocument[G-]{file2}

\begin{document}
\section{abc}

\subfile{file1.tex}

\subfile{file2.tex}

\end{document} 

file1은 다음과 같습니다.

%!TeX root = file1.tex
\documentclass[main.tex]{subfiles}
\begin{document}
\subsection{bla}
\begin{theorem}\label{theorem:fix}
blabla
\end{theorem}
\end{document} 

file2에서는 다음과 같이 정리를 상호 참조하려고 합니다.

%!TeX root = file2.tex
\documentclass[main.tex]{subfiles}

\begin{document}
... Theorem~\ref{X-theorem:fix} ...
\end{document} 

컴파일하는 동안 다음 경고가 나타납니다.

name{theorem.0.1} has been referenced but does not exist, replaced by a fixed one

내 생각엔 이런 문제가 발생하는 것 같은데...

그리고 PDF의 출력은 다음과 같습니다

Theorem 0.1

문서의 상단을 가리키는 하이퍼링크가 있습니다. 모든 하위 파일이 포함된 큰 파일을 생성하거나 file2.tex만 생성하는 main.tex를 컴파일하는 경우에는 변경되지 않습니다. 내 생각에 흥미로운 점은 내가 이미 라벨이 붙은 것을 참조하려고 한다는 것을 어떻게든 알고 있다는 것입니다. 그렇지 않으면 0.1 대신 ?? 거기 서 있을 겁니다. 그래서 , ?? \label{theorem:fi}대신에 쓴다면 \label{theorem:fix}0.1보다는 여기에 쓰여질 것입니다.

관련 정보