CLion 2025.1의 새로운 기능

CLion 2025.1은 디버그, 임베디드 개발 및 프로젝트 형식에 대한 업데이트와 함께 CLion Nova 언어 엔진에 새로운 기능 및 개선 사항을 도입합니다. 또한, C/C++ 코드에서 자연어 프롬프트를 처리하는 기능, 채팅에서 직접 다중 파일을 편집하는 기능 등 다양한 무료 기능 및 향상된 AI Assistant 기능을 제공합니다.

주요 업데이트

CLion Nova의 프로젝트 외부 파일 지원

앞으로 CLion Nova는 프로젝트에 포함되지 않은 헤더 및 소스 파일에 대한 완전한 코드 분석 및 코드 지원 기능을 제공합니다. 이는 예를 들어 빌드에 포함되지 않은 .cpp 파일에서 일부 코드만 수정해야 할 때 유용할 수 있습니다.

자세히 알아보기

디버거의 Qt 렌더러

앞으로는 일시 중단된 Qt 애플리케이션을 검사할 때 디버거에서 사람이 읽을 수 있는 형태로 변수를 볼 수 있습니다. 이를 통해 CLion에서 Qt 프레임워크 기반의 크로스 플랫폼 애플리케이션을 더 쉽게 개발하고 디버그할 수 있습니다.

자세히 알아보기

ST-LINK 디버그 서버 실험적

STM32 칩을 위해 특별히 설계된 ST-LINK 디버그 서버 템플릿이 추가되었습니다. 가장 기본적이고 필수적인 설정만 포함되어 있어, STM32 프로젝트 디버그가 간편해집니다.

자세히 알아보기

west build 옵션 및 sysbuild 지원

이제 Zephyr 프로젝트에서 작업할 때 west build 명령어 옵션과 주요 빌드 시스템으로서의 sysbuild를 사용할 수 있습니다. 이에 따라 하드웨어가 포함된 Zephyr 프로젝트를 구성할 때 더 높은 유연성을 제공합니다.

자세히 알아보기

무료 AI Assistant 기능

이제 CLion 및 다른 JetBrains IDE에서 모든 AI Assistant 기능을 무료로 이용할 수 있습니다. 무제한 코드 완성 및 로컬 모델 지원과 같은 일부 기능은 완전히 무제한으로 제공되며, 나머지 기능은 크레딧 기반으로 제한적으로 이용할 수 있습니다. 또한 새로운 구독 시스템이 도입되어 필요에 따라 AI Pro 및 AI Ultimate 등급으로 쉽게 확장할 수 있습니다.

새로운 기능 중에는 채팅에서 바로 수행할 수 있는 다중 파일 편집과 Claude 3.7 Sonnet, OpenAI GPT-4.1(곧 지원 예정), Gemini 2.0 Flash 등의 클라우드 모델 지원이 있습니다.

자세히 알아보기

CLion Nova

프로젝트 외부 파일

이제 CLion Nova는 프로젝트에 포함되지 않고 빌드 프로세스 중에 사용되지 않는 헤더 및 소스 파일을 올바르게 지원합니다. 즉, 일반 프로젝트 파일과 마찬가지로 해당 파일로 작업할 때에도 완전한 코드 분석 및 코드 지원 기능을 사용할 수 있습니다.

예를 들어, 일부 코드 조각을 편집하기 위해 프로젝트에 포함되지 않은 .cpp 파일을 열어야 할 수 있습니다. 이때 이러한 파일에도 코드 서식 지정, 입력 지원, 코드 완성 등 사용 가능한 모든 필수 기능을 활용할 수 있게 됩니다.

현재 구현된 기능은 대부분의 사용 사례에 적용되며, 일부 특수한 사례를 해결하기 위해 피드백을 수집할 계획입니다.

Objective-C 기본 지원

앞으로는 Objective-C 소스 파일로 작업 시, 구문 강조 표시, 경고, 코드 완성 제안 및 Clangd에서 제공하는 기타 기능을 사용할 수 있습니다.

아직은 기본적 지원이기 때문에 에디터의 스마트 키 및 리팩터링과 같은 일부 기능이 작동하지 않을 수 있습니다. 또한 CLion Nova는 Objective-C 헤더 파일을 올바르게 처리하지 못할 수도 있습니다. CLion Nova에서 Objective-C를 완벽하게 지원하길 원한다면, CPP-37281을 팔로우하거나 투표해 주세요.

설정, 액션 및 스마트 키

이전에는 CLion Classic에서만 사용할 수 있었던 몇몇 설정, 액션 및 스마트 키가 CLion Nova에 추가되었습니다. 이러한 기능을 통해 CLion Nova로 더욱 편리하게 개발할 수 있습니다. 다음은 그 중 몇 가지 예입니다.

  • Auto import local files with quotes(따옴표로 로컬 파일 자동 가져오기)Auto import on completion(완료 시 자동 가져오기) 등의 C/C++ 자동 가져오기 옵션.
  • 단축키를 사용해 코드 블록의 시작이나 끝으로 캐럿을 이동하는 기능을 포함한 일부 에디터 액션
  • Unindent on Backspace(Backspace로 들여쓰기 해제)Surround selection on typing quote or brace(따옴표나 괄호 입력 시 선택 영역 감싸기) 등의 일부 스마트 키

Bazel 프로젝트에 GoogleTest 및 Catch2 지원

CLion Nova는 이제 Bazel 프로젝트에서 GoogleTestCatch2 테스트 프레임워크를 사용할 수 있도록 지원합니다.

유닛 테스트의 기초와 CLion에서 테스트 도구를 사용하는 방법에 관한 자세한 내용은 튜토리얼을 참조하세요.

디버거

Qt 렌더러

Qt pretty printer 또는 Qt 디버그 헬퍼라고도 하는 Qt 렌더러를 통해 QString, QList, QByteArray와 같은 Qt 변수를 사람이 읽을 수 있는 형식으로 표시할 수 있습니다. 이에 따라 Qt 프레임워크로 구축된 애플리케이션을 훨씬 더 간편하게 개발하고 디버그할 수 있습니다.

이 기능은 기본적으로 활성화되어 있습니다. 다음 위치에서 비활성화할 수 있습니다.

  1. Settings(설정) | Build, Execution, Deployment(빌드, 실행, 배포) | Debugger(디버거) | Data Views(데이터 뷰) | C/C++ | Renderers(Qt 렌더러)로 이동합니다.
  2. Qt renderers(Qt 렌더러) 필드 옆에 있는 Download...(다운로드…)를 클릭합니다.
  3. Download Qt Renderers(Qt 렌더러 다운로드) 창이 나타나면, Download Qt Renderers(Qt 렌더러 다운로드)를 클릭합니다. 다운로드가 완료되면 경로가 자동으로 지정됩니다.
  4. OK(확인)를 클릭합니다.

Qt 렌더러는 아직 원격 및 WSL 툴체인에서는 작동하지 않음에 유의합니다.

사용자 지정 LLDB 디버거 지원

현재 번들로 제공되는 LLDB 19.1.3 버전 외에도, macOS 또는 Linux에서 작업할 때 사용자 지정 LLDB를 사용할 수 있습니다. 이를 통해 프로젝트 요구 사항에 가장 적합한 LLDB 버전을 선택할 수 있습니다.

Settings(설정) | Toolchains(툴체인)로 이동하여 Debugger(디버거) 필드의 Custom LLDB executable(사용자 지정 LLDB 실행 파일)을 선택합니다. 그러면 CLion이 자동으로 시스템에 설치된 사용자 지정 LLDB를 찾습니다. 위치를 수동으로 지정할 수도 있습니다.

현재 제한 사항:

  • 사용자 지정 LLDB는 아직 WSL, Docker 또는 원격 호스트 툴체인에서 작동하지 않습니다.
  • 사용자 지정 LLDB는 macOS 및 Linux에서 사용할 수 있지만 현재 Windows에서는 지원되지 않습니다.

OpenCV 2차 행렬을 이미지로 보는 옵션

OpenCV를 사용하는 컴퓨터 비전 또는 ML 애플리케이션을 디버그할 때 OpenCV 행렬을 이미지로 볼 수 있습니다. CLion 2025.1에서는 이 기능을 확장하여 cv::Mat m(2, 3, CV_8UC2)과 같은 2차 행렬을 이미지로 볼 수 있습니다.

코드에서 OpenCV 2차 행렬을 이미지로 보려면 디버거의 Threads & Variables(스레드 및 변수) 창을 선택하고 행렬로 이동한 다음 View as image(이미지로 보기)를 클릭합니다.

.natvis 파일의 사용자 지정 위치

Natvis 렌더러 또는 Natvis 비주얼라이저를 사용하면 MSVC 디버거로 작업할 때 다양한 데이터 유형에 대한 시각화 규칙을 정의할 수 있습니다. 이전에는 CLion이 프로젝트 디렉터리에서 .natvis 파일만 로드할 수 있었기 때문에 특히 Git 또는 기타 버전 관리 시스템을 사용할 때 유연성이 떨어졌습니다. 하지만 이제는 .natvis 파일의 위치를 사용자 지정할 수 있습니다.

Settings(설정) | Build, Execution, Deployment(빌드, 실행, 배포) | Debugger(디버거) | Data Views(데이터 뷰) | C/C++로 이동하여 Natvis 렌더러가 포함된 디렉터리를 추가합니다. Natvis 파일 작업에 대한 자세한 내용은 이 문서에서 확인할 수 있습니다.

임베디드 개발

이제 STM32 프로젝트를 디버그할 때 STM32 칩용으로 특별히 설계된 ST-LINK 디버그 서버 템플릿을 사용할 수 있습니다. 가장 기본적이고 필수적인 설정만 포함되어 있어 구성 프로세스가 간소화됩니다.

Settings(설정) | Build, Execution, Deployment(빌드, 실행, 배포) | Debugger(디버거) | Debug Servers(디버그 서버)로 이동하여 +를 클릭한 다음 ST-LINK 템플릿을 선택합니다. 그런 다음 디버그 서버, 기기 및 디버거 매개변수를 구성합니다.

단, ST-LINK 구성 옵션은 다음에서만 작동하니 유의하세요.

  • STM32CubeCLT 및 STM32CubeIDE에 포함된 ST-LINK GDB 서버.
  • ST-LINK/V2 및 ST-LINK/V3 프로브.
  • 싱글 및 듀얼 코어 MCU.

STM32CubeMX New Project(새 프로젝트) 마법사

사용 편의성을 개선하고 더 다양한 STM32 칩 및 프로젝트 지원을 확대하기 위해 STM32CubeMX 프로젝트 생성 프로세스를 업데이트했습니다. CLion은 CMake 파일 생성 시 STM32CubeMX의 기본 방식을 사용하여 프로젝트 생성과 공식 STM32CubeMX 워크플로 및 툴체인이 완전히 일치하도록 보장합니다.

STM32CubeMX New Project(새 프로젝트) 마법사는 꾸준히 개선될 예정입니다. 피드백을 보내 주시면 감사하겠습니다(CPP-42553).

직렬 포트 모니터 플러그인 개선 사항

이제 직렬 포트 모니터 플러그인으로 작업할 때 DTR, DSR, RTS 및 CTS 하드웨어 제어 신호를 확인 및 관리할 수 있습니다. 이를 통해 Arduino 및 ESP32와 같은 직렬 포트를 사용하는 연결된 기기를 더 잘 제어할 수 있습니다.

하드웨어 제어 신호를 활성화하려면 다음을 수행합니다.

  • Serial Connections(직렬 연결) 도구 창에서 Connect(연결) 탭으로 이동합니다.
  • 원하는 COM 포트를 선택합니다.
  • Show HW controls(HW 제어 표시) 체크박스를 클릭합니다.

그러면 제어 옵션 및 표시기가 COM 포트 탭에 나타납니다.

또한 모니터 출력에서 타임스탬프를 볼 수 있어 메시지 시퀀스를 자세히 추적할 수 있습니다.

프로젝트 형식 및 빌드 도구

west build 옵션 및 sysbuild 지원

이제 Zephyr 프로젝트에서 작업할 때 west build 명령어 옵션과 주요 빌드 시스템으로서의 sysbuild를 사용할 수 있습니다. 이 두 가지는 하드웨어를 포함하여, Zephyr 프로젝트를 구성할 때 더 많은 유연성을 제공합니다.

Settings(설정) | Build, Execution, Deployment(빌드, 실행, 배포) | Embedded Development(임베디드 개발) | West | Advanced Settings(고급 설정)를 사용하여 west build 명령어에 대한 추가 매개변수(예: 사용자 지정 보드 경로 또는 기본 빌드 도구 옵션)를 전달합니다.

Sysbuild는 여러 SoC(System on a Chip)가 있는 보드 또는 여러 CPU 코어가 있는 SoC에 대해 여러 이미지를 빌드할 수 있는 기능을 제공합니다. sysbuild를 활성화하려면 동일한 Advanced Settings(고급 설정) 섹션에서 원하는 다른 옵션과 함께 --sysbuild를 전달하면 됩니다.

CMake Presets v10

번들로 제공되는 CMake가 3.31.4 버전으로 업데이트되었으며 CMake Presets 10 버전에 대한 지원이 포함됩니다. 프리셋은 JSON 파일로 저장되며 CMake 프로젝트의 공통 구성 및 빌드 옵션을 지정하여 다른 사용자와 공유하는 경우에 유용합니다.

AI Assistant 업데이트

무료 요금제, 새로운 클라우드 모델 등

이제 모든 AI Assistant 기능이 CLion 및 기타 JetBrains IDE에서 무료로 제공되므로 AI 기반 개발을 더 쉽게 효율적으로 이용할 수 있습니다. 무제한 코드 완성 및 로컬 모델 지원과 같은 일부 기능은 완전히 무제한으로 제공되며, 나머지 기능은 크레딧 기반으로 제한적으로 이용할 수 있습니다. 또한 새로운 구독 시스템이 도입되어 필요에 따라 AI Pro 및 AI Ultimate 등급으로 쉽게 확장할 수 있습니다.

기타 향상된 기능으로 생산성을 높이고 반복적인 작업을 줄일 수 있습니다.

  • 더 스마트해진 코드 완성.
  • Claude 3.7 Sonnet, OpenAI GPT-4.1(곧 제공 예정), Gemini 2.0 Flash와 같은 새로운 클라우드 모델 지원.
  • RAG 기반 고급 컨텍스트 인식.
  • 채팅에서 바로 여러 파일을 편집할 수 있는 새로운 편집 모드.

C/C++용 자연어 인라인 프롬프트

AI Assistant는 C/C++용 자연어 프롬프트를 이해하는 방법을 학습했습니다. 프롬프트를 작성하고 Tab 키를 누르면, AI Assistant가 프로젝트의 컨텍스트를 고려하여 이를 해석하고 코드 변경으로 변환합니다. 제안된 변경 사항 중 일부를 개선하려면 변경 내용을 실행 취소하거나 프롬프트를 수정하거나 후속 메시지를 추가하면 됩니다.