> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/ko/knowledge-base/038-fixing-and-preventing-compile-timeouts.md).

# 컴파일 시간 초과 수정 및 방지하기

버튼을 클릭하면 **다시 컴파일** Overleaf 프로젝트에서 누르면 프로젝트 파일을 읽어 조판된 PDF로 변환하는 프로세스가 시작됩니다. 컴파일 시간 초과 오류가 발생했다면 이는 컴파일 과정이 다음의 [Overleaf 요금제의 시간 제한](/latex/ko/knowledge-base/119-overleaf-plan-limits.md).

일부 프로젝트는 주어진 시간 안에 PDF를 만들기에는 너무 크거나 복잡할 수 있지만, 컴파일 시간 초과는 종종 해결하거나 예방할 수 있습니다.

## 컴파일 시간 초과를 해결하는 단계

컴파일 시간 초과를 유발하는 일반적인 문제를 식별하고 해결하려면 다음 단계를 따르세요:

1. [컴파일 오류를 확인하고 다음을 사용해 수정하세요: **첫 오류에서 중지** 모드](#first-errors)
2. [시도해 보세요 **Fast\[draft\]** 모드를 사용하고 이미지 크기를 최적화하세요](#second-images)
3. [프로젝트에서 시간이 많이 걸리는 작업을 점검하세요](#third-assess)

이 단계를 따르는 것 외에도, 다음에서 무엇을 해야 하는지에 대한 제안을 검토하세요: [특정 시간 초과 상황](#anchor-advice) 뿐만 아니라 [권장 모범 사례](#anchor-best) 를 따라 컴파일 시간 초과를 방지하세요.

Overleaf의 무료 요금제에서 제공되는 시간 내에 많은 프로젝트를 컴파일할 수 있지만, 크거나 복잡한 문서를 준비 중이라면 [프리미엄 요금제를 구독해야 할 수 있습니다](https://www.overleaf.com/user/subscription/plans) 더 많은 컴파일 시간을 확보하려면.

## 1단계: 컴파일 오류를 확인하고 수정하기

일부 컴파일 오류나 여러 오류가 누적되면 다음을 완전히 막을 수 있습니다 [latexmk 빌드 과정](https://learn.overleaf.com/learn/Kb/How_does_Overleaf_compile_my_project%3F) 그리고 컴파일 시간 초과로 이어질 수 있습니다. 오류를 찾아 수정하려면 다음을 켜세요: **첫 오류에서 중지** 다음 아래의 컴파일 모드: **다시 컴파일** 드롭다운 메뉴:

![첫 오류에서 중지 컴파일 모드를 활성화하는 방법을 보여 주는 스크린샷](/files/0d95a01bb5942028ad69ae9a1c5e58915fb92365)

다음 [**첫 오류에서 중지**](/latex/ko/knowledge-base/149-using-the-stop-on-first-error-compilation-mode.md) 컴파일 모드는 예상대로 정확히 작동합니다. 오류가 발생하면 즉시 컴파일을 중지합니다. 이 경우 PDF는 생성되지 않으며 오류를 설명하는 메시지가 표시됩니다. 다음을 켜면 **첫 오류에서 중지** 프로젝트가 오류 없이 될 때까지 프로젝트의 각 오류를 찾아 수정할 수 있습니다.

각 오류 메시지를 클릭하면 문제를 일으키는 소스 코드의 해당 줄로 이동하므로 코드를 수정할 수 있습니다. 몇 가지 일반적인 오류는 다음에서 설명합니다: [이 페이지](/latex/ko/latex/05-errors.md), 그리고 몇 가지 LaTeX 디버깅 제안은 다음에 나와 있습니다: [이 페이지](/latex/ko/questions-and-answers/81-tips-and-tricks-for-troubleshooting-latex.md). 또한 다음도 참조하세요: [이 문서의 섹션](#anchor-fatal) 일반적인 몇 가지 **치명적인 컴파일 오류** 로 인해 컴파일 시간 초과가 발생합니다.

## 2단계: Fast \[draft] 모드로 컴파일해 보기

프로젝트에 많거나 큰 이미지 파일을 포함하면 프로젝트를 컴파일하는 데 필요한 시간이 크게 늘어날 수 있습니다.

이미지 처리 때문에 시간 초과가 발생하는지 확인하는 데 도움이 되는 한 가지 방법은 다음 모드로 컴파일해 보는 것입니다: **빠른 \[초안]** 모드입니다. 그렇게 하려면 다음 옵션을 선택하세요: **빠른 \[초안]** 다음에서 해당 옵션을: **재컴파일 메뉴**. 그러면 모든 그래픽이 상자로 대체되어 PDF 컴파일이 훨씬 빨라집니다:

![Overleaf 프로젝트에서 초안 컴파일 모드 설정](/files/16ffe9805e9fd9b1edbd0e7e17e20aecb60c3635)

문서가 다음 모드에서는 컴파일되지만 **빠른 \[초안]** 모드에서는 컴파일이 완료되지 않는다면 **일반** 모드라면, 원인은 크거나 많은 이미지 파일일 수 있습니다.

### 이미지 파일 최적화

여러 개의 크고 고해상도 PNG 또는 JPEG 파일을 사용했다면, 해당 파일들을 처리하는 데는 프로젝트 컴파일에 필요한 시간이 늘어날 수 있으며, 때로는 상당히 늘어날 수 있습니다. 다음을 꼭 하세요:

* 도표와 그래프에는 PNG 파일 대신 PDF 파일을 사용하세요.
* JPEG는 사진에만 사용하세요.

추가 조언은 다음을 참조하세요: [큰 이미지 파일 최적화](/latex/ko/knowledge-base/113-optimising-very-large-image-files.md).

## 3단계: 프로젝트에서 시간이 오래 걸리는 작업과 치명적인 오류를 점검하기

둘 다 **첫 오류에서 중지** 및 **Fast\[draft]** 컴파일 모드에서도 여전히 시간 초과가 발생한다면, 원인을 더 자세히 찾아 파악하고(가능하다면) 해결해야 할 수 있습니다.

1\. [컴파일을 느리게 할 수 있는 시간이 많이 걸리는 관행과 패키지 목록을 검토하세요](#anchor-slow)

2\. [시간 초과로 이어질 수 있는 일반적인 치명적 오류 목록을 검토하세요](#anchor-fatal)

3\. [현재 상황에 가장 잘 맞는 특정 시간 초과 시나리오에 대한 조언을 확인하세요](#anchor-advice)

### 시간이 많이 걸리는 관행 및 패키지

일부 관행과 패키지는 컴파일을 매우 느리게 만들고 심지어 시간 초과를 유발할 수 있습니다.

**복잡한 TikZ 또는 pgfplots 도형을 포함하는 경우**

`TikZ` 및 [`pgfplots`](https://ctan.org/pkg/pgfplots?lang=en) 훌륭한 그래픽을 만들어 내지만,  [컴파일하는 데 오랜 시간이 걸릴 수 있습니다](https://tex.stackexchange.com/a/254946/226). 이에 대해 [TikZ 그림을 외부화할 수 있는 여러 방법이 있습니다](/latex/ko/questions-and-answers/60-i-have-a-lot-of-tikz-matlab2tikz-or-pgfplots-figures-so-i-m-getting-a-compilation-timeout.-can-i.md) 그래서 LaTeX가 새 PDF를 만들 때마다 이를 다시 그릴 필요가 없습니다.

**mhchem 패키지 사용**

다음의 최신 버전은 [`mhchem` 패키지](https://ctan.org/pkg/mhchem?lang=en) 컴파일하는 데 더 오래 걸릴 수 있습니다. 사용 목적에 따라 [`chemformula` 패키지](https://ctan.org/pkg/chemformula) 가 컴파일에 필요한 시간을 줄일 수 있습니다. 이미 다음을 사용 중이라면 `mhchem`대체용으로 바로 사용해 볼 수 있습니다 `chemformula` 대체품으로:

```latex
% \usepackage{mhchem}
\usepackage{chemformula}
\let\ce\ch
```

* **참고**다음 사이에는 구문 및 기능 차이가 있습니다 `mhchem` 및 `chemformula`, 따라서 항상 잘 작동하지는 않을 수 있습니다. 예를 들어, `\ce{2H2O}` 는 다음에서는 잘 표시되지만 `mhchem`, 그러나 다음에서는 `chemformula` 이것을 다음과 같이 작성해야 합니다 `\ch{2 H2O}` 처음 뒤에 공백을 넣어야 합니다 `2`.

**추적 또는 디버깅 호출을 포함하는 경우**

만약 문서에 우연히 `\tracingall` 명령이 있다면, 다음에 *많은* 데이터를 `.log`. 기록하고 처리하는 `\tracingall` 파일의 데이터가 `.log` 기록되면 컴파일이 매우 느려질 수 있습니다. 다음을 제거하는 것이 좋습니다: `\tracingall` 호출을, 또는 디버깅에 비슷한 방법을 사용해야 한다면 다음을 사용하세요: [`trace` 패키지](http://ctan.org/pkg/trace) 대신.

**acro 패키지 사용**

다음을 사용하는 사용자들은 [`acro` 패키지](https://www.ctan.org/pkg/acro) 가 [3버전이 느리다고 보고했습니다](https://github.com/cgnieder/acro/issues/205) 약어 선언을 불러오는 데. 그 결과 중 하나는 `acro`의 증가한 컴파일 시간으로 인해 컴파일 시간 초과가 발생할 가능성이 있다는 점입니다. 다행히 우회 방법이 있습니다: 다음의 2버전을 사용하는 것입니다 `acro` 패키지.

3버전에서 다시 2버전으로 전환하려면 프로젝트를 편집하여 2버전의 옵션, 기능, 명령과 호환되도록 해야 할 수 있습니다. 2버전 문서는 이전 소스 코드 릴리스에 포함되어 있으며, 다음에서 [GitHub에서 다운로드할 수 있습니다](https://github.com/cgnieder/acro/releases/tag/v2.10).

2버전으로 되돌릴 때 확인할 몇 가지 항목은 다음과 같습니다. 이 목록은 결코 전부가 아닙니다:

1. 프로젝트의 기본 `.tex` 를 다음으로 수정하세요:
   * 변경: `\usepackage{acro}` 을 `\usepackage{acro}[=v2]`
   * 다음을 변경하세요: `include=...` 옵션 키를 `\printacronyms` 을 `include-classes=...`
2. 다음의 모든 `\DeclareAcronym` 명령에서 다음이 `tag=...` 옵션 키를 다음으로 변경하세요: `class=...`.

다음을 참조하세요: [`acro` 2.10 버전 문서](https://github.com/cgnieder/acro/releases/tag/v2.10) 에서 2버전에는 있지만 3버전에는 없는 명령과 옵션을 확인할 수 있습니다.

**EPS 또는 SVG 이미지 사용**

EPS 또는 SVG 이미지를 사용하면 PDF 형식으로 변환하기 위해 추가 처리가 필요할 수 있습니다. 이 추가 처리로 인해 프로젝트 컴파일에 필요한 시간이 늘어납니다.

* 다음은 **latex** 컴파일러가 EPS 이미지를 직접 지원하는 반면, **pdfLaTeX** 컴파일러는 EPS 이미지를 지원하지 않으므로, 해당 컴파일러를 사용할 때 이를 PDF 이미지로 변환하는 추가 단계가 필요합니다. 이 처리는 다음 패키지에서 담당합니다: `epstopdf` 패키지이며 다음을 사용합니다 `Ghostscript` EPS 파일을 PDF로 변환합니다. 이 변환 단계는 프로젝트 컴파일에 필요한 시간을 크게 늘릴 수 있습니다.
* SVG 이미지 파일은 어떤 LaTeX 컴파일러도 직접 지원하지 않으며, 다음의 사용이 필요합니다: `svg` 패키지와 다음이 `\includesvg` 제공하는 명령입니다. 다음은 `svg` 패키지를 사용하여 `inkscape` SVG 이미지를 PDF로 변환합니다. 이 변환 단계는 프로젝트 컴파일에 필요한 시간을 크게 늘릴 수 있습니다.

컴파일 시간 초과를 피하는 데 도움이 될 수 있도록 더 빠른 결과가 필요하다면, EPS나 SVG 형식 대신 이미지의 PDF 버전을 사용하세요.

**tabularray 패키지 사용**

다음 `tabularray` 패키지는 LaTeX에서 표를 구현하는 표준 명령과 환경의 대안이 됩니다. 안타깝게도 다음 `tabularray` 패키지는 특히 큰 표나 특정 열 유형을 사용하는 표에서 매우 느리게 동작합니다. 현재는 컴파일 시간 측면에서 다음보다 표준 표 정의 방법이 권장됩니다: `tabularray` 컴파일 시간 고려 사항 때문에.

**명령에서 무한 루프 만들기**

컴파일 중에 LaTeX 명령이 아주 드물게 “무한 루프”를 유발할 수 있습니다. 무한 루프는 대부분 패키지나 사용자가 정의한 명령의 버그로 인해 발생합니다.

루프가 발생한 것 같다면, 실수로 다음을 만들지 않았 [재귀적인](https://en.wikipedia.org/wiki/Recursion) 사용자 정의 명령 중 하나에 있는 정의를, 예를 들어 `\newcommand{\foo}{\foo}`.

### 치명적인 컴파일 오류의 몇 가지 원인

아래는 알려진 치명적 오류의 몇 가지 원인입니다.

**민감한 제목 명령에 빈 줄을 포함하는 경우**

LaTeX 클래스와 저널 템플릿은 문서 제목의 일부를 지정하기 위한 특별한 명령을 제공하는 경우가 많습니다. 이러한 명령은 보통 간단한 인수를 포함하도록 되어 있으며, 예상치 못한 방식으로 사용하면 컴파일 오류와 시간 초과까지 발생할 수 있습니다. 특히 다음과 같은 명령은 `\author{...}`, `\date{...}` 및 `\title{...}` 빈 줄을 포함해서는 안 됩니다.

**고정 배치를 너무 많이 포함하는 경우**

다음을 사용하는 표나 그림이 너무 많으면 `[H]` 배치 식별자를 다음 패키지에서 사용하면 `float` LaTeX가 이들 모두를 배치할 적절한 위치를 찾으려다 무한 루프에 빠질 수 있습니다. 모든 `[H]` 다음으로 바꾸면 `[hbt!]` 그리고 필요하다면 가끔씩 `\clearpage` 를 사용해 페이지 나누기 전에 대기열에 있는 모든 표와 그림을 비우는 것을 고려하세요.

**\caption 명령과 tabular 환경의 오류**

표와 관련해 주의해야 할 문제 목록은 다음과 같습니다. 일반적으로 표를 조판할 때는 조심하세요!

* `\caption{...}` 는 항상 *밖에* 다음 `tabular` 배치해야 합니다. 왜냐하면 다음이 로드된 경우 치명적 오류를 일으킬 수 있기 때문입니다: [`caption` 패키지](https://ctan.org/pkg/caption) 다음 예시에서 볼 수 있듯이:

  ```latex
  \documentclass{article}
  \usepackage{caption}
  \begin{document}

  \begin{table}
      \begin{tabular}{c|c}
          \caption{Caption}% \caption{...}는 tabular 환경 밖에 있어야 합니다
          a & b \\
          c & d \\
      \end{tabular}
  \end{table}
  \end{document}
  ```

  [이 예시 열기 **Overleaf 시간 초과 오류를 유발합니다**](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Overleaf+timeout+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bcaption%7D%0A%5Cbegin%7Bdocument%7D%0A%0A%5Cbegin%7Btable%7D%0A++++%5Cbegin%7Btabular%7D%7Bc%7Cc%7D%0A++++++++%5Ccaption%7BCaption%7D%25+%5Ccaption%7B...%7D+should+be+OUTSIDE+the+tabular+environment%0A++++++++a+%26+b+%5C%5C%0A++++++++c+%26+d+%5C%5C%0A++++%5Cend%7Btabular%7D%0A%5Cend%7Btable%7D%0A%5Cend%7Bdocument)
* 반대로, 다음은 `longtable` 환경은 *실제로* 필요로 합니다 `\caption{...}` 그 안에서, 다음의 예시에서 볼 수 있듯이 [표 도움말 문서](/latex/ko/figures-and-tables/01-tables.md#multi-page-tables).
* `\caption{...}` 를 포함해서는 안 됩니다 `\\`, `\newline`, `\centering`, `\raggedright` 등
* 일부 템플릿이나 패키지에서는 `\ref{...}` 또는 `\cite{...}` 다음 안에서 `\caption` 앞에 다음을 붙여야 할 수 있습니다 `\protect` 치명적 오류를 피하기 위해; 예를 들어, `\protect\cite{...}`.
* 불완전한 부분을 확인하세요 `\cmidrule{...}` 안에서 `tabular` 환경에서; 이 명령은 열 범위를 필요로 하므로 다음과 같이 작성해야 합니다 `\cmidrule{3-3}` 그냥 다음 대신 `\cmidrule{3}` 한 열만 가로지르는 가로선을 원한다면.
* 중첩된 `tabular` 환경은 피하세요. 다음을 살펴보세요: [`makecell` 패키지](https://ctan.org/pkg/makecell?lang=en) 표 셀에 수동 줄바꿈을 추가하고 싶다면, 또는 다음을 `p{...}` 열 유형 및/또는 [`tabularx`](https://ctan.org/pkg/tabularx) 패키지를 살펴보세요. 긴 줄이 자동으로 줄바꿈되는 열을 만들 방법을 찾고 있다면요.
* tabular 행이 다음으로 시작한다면 `[...` 다음을 추가해야 할 수 있습니다 `\relax` 다음 뒤에 `\\` 이전 행의

**soul 또는 changes 패키지 사용**

다음을 사용 중이라면 [`soul`](https://ctan.org/pkg/soul) 또는 [`changes`](https://ctan.org/pkg/changes) 패키지로 텍스트를 강조 표시하거나 취소선을 넣고 있다면, `\cite` 및 `\ref` 앞에 다음을 붙여야 할 수 있습니다 `\protect`으로 설정합니다; 예를 들어, `\protect\cite{...}`.

**tikzpicture 사용**

누락된 것을 확인하세요 `;` 경로/노드 명령 끝의 `]` 매개변수 목록 끝의 `tikzpicture`s.

**breqn 패키지 사용**

다음 [`breqn`](https://ctan.org/pkg/breqn) 패키지의 `dmath` 환경은 무한 루프에 빠질 수 있습니다. 다음으로 바꾸세요: `align` 필요하다면 수동으로 줄을 나누세요.

**babel 패키지 사용**

일부 [`babel`](https://ctan.org/pkg/babel) 언어 옵션은 특정 문자의 의미를 바꿔, 그 문자가 “일반” 문맥에서 사용될 때 문제를 일으킬 수 있습니다. 예를 들어 수학 모드에서 그렇습니다. 이를 피하려면 다음 옵션을 사용해 보세요: `shorthands=off` babel을 로드할 때(예: `\usepackage[shorthands=off]{babel}`).

**jabbrv 패키지 사용**

일부 템플릿은 다음을 사용합니다 [`jabbrv` 패키지](https://github.com/compholio/jabbrv) 저널 제목을 자동으로 약칭하기 위해(참조: [이 Overleaf 예시](https://www.overleaf.com/latex/templates/automatic-journal-abbreviations/mxfsdscmvxcr)). 다음의 저널 필드에 `.bib` 파일에 악센트가 있는 유니코드 문자(예: Biología)가 포함되어 있으면, 컴파일이 막히고 Overleaf에서 시간 초과가 발생할 수 있습니다. 대신 LaTeX 명령을 사용해야 합니다. 예: `Biolog{\'i}a` 또는 다음을 할 수 있습니다 [프로젝트의 컴파일러를 변경하거나](/latex/ko/knowledge-base/026-changing-compiler.md) 을 `XeLaTeX` 또는 `LuaLaTeX`, 둘 다 유니코드 문자 읽기를 기본적으로 지원합니다.

## 특정 시간 초과 상황에 대한 조언

### 제 프로젝트는 오류 없이 컴파일되고 있었는데, 이제 컴파일 시간 초과가 발생합니다

작은 변경으로도 때때로 컴파일 시간 초과가 발생할 수 있습니다. 문제의 원인을 파악하고 해결하는 데 도움이 되도록 다음 단계를 시도해 보세요:

1. 사용 [처음부터 다시 컴파일](/latex/ko/knowledge-base/028-clearing-the-cache.md) 문제를 일으킬 수 있는 오래된 생성 파일을 정리하기 위해.
2. 다음을 사용하세요 [Overleaf 기록 기능](/latex/ko/more-topics/49-using-the-history-feature.md) 를 사용해 가장 최근 변경 사항을 찾아보세요. 위의 치명적 컴파일 오류 원인 목록도 확인하세요.
3. 다음을 사용하세요 [첫 오류에서 중지](/latex/ko/knowledge-base/149-using-the-stop-on-first-error-compilation-mode.md) 옵션을 사용해 실수로 도입한 오류를 찾아 수정하세요.

작은 변경이 치명적 컴파일 오류로 이어졌을 수 있습니다. 다음을 참조하세요: [위의 치명적 컴파일 오류 목록](#anchor-fatal) 에서 가능한 원인을 확인하세요.

### 방금 Overleaf에 프로젝트를 업로드했는데 컴파일 시간 초과가 발생했습니다

프로젝트에 핵심 파일이나 패키지가 빠졌거나, Overleaf의 컴파일 과정에 문제를 일으키는 방식으로 구성되어 있을 수 있습니다.

* 프로젝트가 로컬 컴퓨터에서는 문제없이 컴파일되었지만 Overleaf에서는 실패한다면, 다음의 다른 버전을 사용하고 있을 수 있습니다 **TeX Live** 자신의 컴퓨터에서 말입니다. 다음을 할 수 있습니다 [프로젝트의 TeX Live 버전을 변경하여](https://www.overleaf.com/blog/new-feature-select-your-tex-live-compiler-version) 로컬에서 성공적으로 컴파일된 버전과 더 가깝게 맞추세요.
* 업로드한 프로젝트의 파일 구조가 Overleaf에 최적화되어 있지 않을 수 있습니다. 주 tex 파일이 폴더 안에 있으면 컴파일러가 일부 파일 종속성을 찾는 데 어려움을 겪을 수 있습니다. 주 tex 파일이 폴더 안에 있다면, 주 tex 파일을 프로젝트의 최상위 수준으로 옮기도록 프로젝트 구조를 다시 정리해 보세요.

위의 [오류를 찾아 수정하는 지침을 따르면](#first-errors) 누락된 파일, TeX Live 버전 문제, 프로젝트 구성 문제를 종종 찾아낼 수 있습니다.

### 컴파일되던 프로젝트를 복사했는데, 이제 컴파일 시간 초과가 발생합니다

기존 프로젝트의 복사본을 포함한 새 프로젝트는 기본적으로 최신 버전의 TeX Live를 사용합니다. 원본 프로젝트가 더 오래된 TeX Live 버전을 사용했다면, 최신 버전과의 호환성 문제로 문제가 발생했을 수 있습니다. 다음을 시도해 보세요: [TeX Live 버전을 변경하여](https://www.overleaf.com/blog/new-feature-select-your-tex-live-compiler-version) 새 복사본을 원본 프로젝트의 버전에 맞추세요.

### 모든 섹션을 포함하면 프로젝트가 컴파일되지 않지만, 각 섹션은 각각 따로는 잘 컴파일됩니다

따르세요 [위의 Fast\[draft\] 컴파일 옵션 사용 조언을](#second-images) 프로젝트 전체가 Fast\[draft] 모드에서 컴파일되는지 확인해 보세요.

경우에 따라 큰 프로젝트를 두 단계로 성공적으로 컴파일할 수 있습니다. 먼저 Fast\[draft] 모드로 실행한 다음, Normal 모드로 컴파일하는 것입니다.

프로젝트의 각 섹션을 확인하여 컴파일이 느려지는 가능한 원인을 찾으세요. 여기에는 다음이 포함될 수 있습니다 [최적화할 수 있는 큰 이미지 파일](#anchor-optimize), 또는 다른 [시간이 많이 걸리는 관행이나 패키지](#anchor-slow).

### 제 프로젝트는 때때로 시간 초과가 발생하지만, 안정적으로 컴파일되지 않습니다

프로젝트가 최대 컴파일 시간에 매우 근접해 실행되고 있을 수 있습니다. 위의 다음에 대한 조언을 따르세요 [오류 수정](#first-errors), [이미지 최적화](#second-images), 그리고 [시간이 많이 드는 관행이나 패키지 피하기](#third-assess).

## 컴파일 시간 초과를 방지하기 위한 모범 사례

컴파일 시간 초과가 발생한 뒤 이를 해결하는 때로는 스트레스가 큰 과정보다, 아예 발생하지 않도록 예방하는 편이 훨씬 좋습니다. 이 권장 사항들은 컴파일 시간 초과가 발생하는 것을 막거나, 발생하더라도 빠르게 복구하는 데 도움이 될 것입니다.

### 발생하는 모든 컴파일 오류를 수정하세요

컴파일 오류는 Recompile 버튼 옆의 빨간 알림 말풍선으로 표시되며, 다음에서 설명한 것처럼 [이 페이지](/latex/ko/questions-and-answers/81-tips-and-tricks-for-troubleshooting-latex.md). 빨간 말풍선을 클릭하면 오류 메시지를 볼 수 있습니다. 각 오류 메시지를 클릭하면 소스 코드의 해당 줄로 이동하여 코드를 수정할 수 있습니다. 오류는 가능한 한 빨리 수정하는 것이 좋습니다. 오류를 쌓아 두면 나중에 디버깅하기 어렵고 치명적인 오류로 이어질 수 있기 때문입니다.

[이 페이지](/latex/ko/latex/05-errors.md) 여러 가지 흔한 컴파일 오류를 설명합니다. 오류 메시지를 이해하는 데 어려움이 있다면, 종종 오류의 텍스트를 사용해 온라인에서 검색하면 해당 오류가 설명되고 해결책이 제시된 블로그나 포럼 게시글을 찾을 수 있습니다.

### 큰 변경이나 중요한 이정표 전에 프로젝트 버전에 레이블을 지정하세요

다음을 사용하세요 [Overleaf 기록 기능](/latex/ko/more-topics/49-using-the-history-feature.md) 프로젝트 버전에 레이블을 지정하면 현재 프로젝트를 이전 버전과 쉽게 비교할 수 있습니다. 이를 통해 새로운 컴파일 오류의 원인을 빠르게 찾는 데 도움이 될 수 있습니다.

### 파일을 정리하세요

프로젝트가 잘 정리되어 있으면 문제를 찾고 수정하기가 더 쉽습니다. 또한 프로젝트를 잘 관리하면 프로젝트의 특정 부분만 컴파일할 수 있어, 컴파일 시간이 지나치게 길어지는 데 기여하는 영역을 식별하기가 더 쉬워집니다. 부디 [여기에서 확인하세요](/latex/ko/document-structure/07-management-in-a-large-project.md) 대규모 프로젝트를 관리하는 방법에 대한 조언을 보려면.

## 컴파일 및 컴파일 시간에 대한 추가 정보

### 애초에 “컴파일”이란 무엇인가요?

컴파일은 LaTeX 코드를 조판된 PDF 파일로 변환하는 과정입니다. [Overleaf가 LaTeX 프로젝트를 컴파일하는 방법에 대해 자세히 알아보세요](/latex/ko/knowledge-base/064-how-does-overleaf-compile-my-project.md).

### 공정 사용 한도

일부 크거나 복잡한 문서는 Overleaf 무료 요금제의 시간 초과 한도보다 더 오래 컴파일될 수 있으며, 저희의 [유료 요금제](https://www.overleaf.com/user/subscription/plans). 일부 프로젝트는 유료 요금제에서 제공하는 것보다 더 긴 컴파일 시간이 필요할 수도 있습니다. 그런 경우 프로젝트를 다운로드하여 로컬에서 컴파일해야 할 수 있습니다.

### 아직도 막히시나요?

여기의 조언으로 해결할 수 없는 컴파일 시간 초과가 있다면, 부탁드립니다 [알려주세요](https://www.overleaf.com/contact).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/ko/knowledge-base/038-fixing-and-preventing-compile-timeouts.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
