이 페이지에서

Clangd

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

clangd에 대한 환경설정을 설정하려면 Preferences > C++ > Clangd 로 이동하여 Use clangd 을 선택하세요.

C++ 환경설정의 Clangd 탭

다음 표에서는 사용 가능한 기본 설정에 대해 설명합니다.

기본 설정설명
Path to executableclangd 버전 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 thresholdQt 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.