Clangd
Clang 프로젝트에는 C 언어 계열 소스 파일을 구문 분석하고 자세한 진단을 제공하기 위한 라이브러리가 있습니다. clangd 인덱스는 코드 완성과 같은 서비스에 대해 정확하고 완전한 결과를 제공합니다.
clangd에 대한 환경설정을 설정하려면 Preferences > C++ > Clangd 로 이동하여 Use clangd 을 선택하세요.

다음 표에서는 사용 가능한 기본 설정에 대해 설명합니다.
| 기본 설정 | 설명 |
|---|---|
| Path to executable | clangd 버전 14 이상의 경로를 지정합니다. |
| Background indexing | 더 빠르지만 정확도가 떨어지는 기본 제공 인덱서를 사용하려면 Off 을 선택합니다. 글로벌 심볼 검색 시 정확도 또는 속도 중 어느 것이 더 중요한지에 따라 색인 우선순위를 설정합니다. |
| Per-project index location | 각 프로젝트의 색인 파일을 저장할 폴더를 지정합니다. compile-commands.json 파일도 여기에 저장됩니다. |
| Per-session index location | 각 세션의 인덱스 파일을 저장할 폴더를 지정합니다. |
| Header/source switch mode | 헤더 파일과 소스 파일 사이를 전환할 C/C++ 백엔드를 선택합니다. Try Both 내장된 코드 모델에서 아무것도 찾지 못하면 clangd를 사용합니다. |
| Worker thread count | 사용할 고정 코어 수를 설정합니다. 기본적으로 clangd는 사용하지 않는 모든 코어를 사용합니다. |
| Insert header files on completion | 심볼을 완성할 때 헤더 파일을 삽입합니다. |
| Update dependent sources | 편집할 때 헤더 파일이 포함된 모든 소스 파일을 다시 구문 분석합니다. 헤더 파일을 저장할 때만 다시 구문 분석하려면 이 옵션을 선택 취소합니다. |
| Completion results | 최대 완성 결과 수. 제한을 제거하려면 0으로 설정합니다. |
| Completion ranking model | 완성 제안의 순위를 매길 클랭드 모델을 선택합니다. Decision Forest (기본값)은 머신 러닝을 사용하며 Heuristic 은 수작업으로 작성합니다. |
| Document update threshold | Qt Creator 에서 문서 변경 내용을 서버로 보내기 전에 대기하는 시간입니다. |
| Ignore files greater than | 구문 분석할 파일의 최대 크기. 구문 분석 속도를 높이려면 활성화합니다. |
| Diagnostic configuration | 수행할 Clang 검사. 검사를 편집하려면 선택합니다. |
| Sessions with a Single Clangd Instance | 인덱싱에 단일 클랑드 프로세스를 사용해야 하는 세션을 추가합니다. |
Clang 검사
Diagnostic configuration 필드의 값을 선택하면 Diagnostic Configurations 대화 상자가 열리고, 여기서 수행할 검사를 선택하고 편집할 수 있습니다.

기본 제공 검사를 사용하는 것 외에도 Copy 을 선택하여 사본을 만들고 필요에 맞게 사본을 편집할 수 있습니다.
- Build-system warnings 빌드 시스템에서 지정한 경고를 표시합니다.
- Checks for questionable constructs
-Wall및-Wextra검사를 결합하여 쉽게 피할 수 있는 의심스러운 구조와 몇 가지 추가 문제를 확인합니다.
Clang 검사는 -W 로 시작합니다. 각 검사에는 -Wno 로 시작하는 네거티브 버전도 있습니다.
일부 옵션은 다른 옵션을 켠다는 점에 유의하세요. 자세한 내용은 경고를 요청하거나 억제하는 옵션 또는 GCC 또는 Clang 매뉴얼 페이지를 참조하세요.
Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.