CLion 설치와 WSL 설정하기

2020. 12. 12. 12:20개발

CLion에는 컴파일러가 내장되어 있지 않으므로, Visual Studio의 MSVC, MinGW에서 gcc(g++)을 잡아 사용합니다.

하지만 MSVC의 경우 한글 폴더가 있으면 깨질뿐더러 온라인 저지 사이트에서는 대부분 gcc를 사용하니 동일한 답을 보장하지 않는 경우도 생깁니다.

일부 분들은 MinGW에서 C++17, 20에서 일부 비표준 헤더(bits/stdc++.h)들을 불러오지 못하는 오류를 겪는 것을 보았습니다.

 

그래서 오늘은 윈도우에서 제공하는 WSL(Windows Subsystems for Linux)로 Linux 환경의 gcc를 사용해 C(C++)를 컴파일하는 방법에 대해 다뤄보겠습니다.


우선 CLion은 JetBrains에서 제공하는 IDE입니다. 유료이기 때문에 30일 체험판을 받아 사용할 수 있으며, 학생 인증(Github 계정으로 인증 가능)을 하면 재학 기간 중 무료로 사용할 수 있습니다.

 

CLion 단일 설치 파일을 받는 방법도 있지만, 이후 자동 업데이트 등을 위해서 툴박스(JetBrains Toolbox)로 설치해보겠습니다.

 

www.jetbrains.com/toolbox-app/

 

JetBrains Toolbox App: Manage Your Tools with Ease

Open any of your projects in any of the IDEs with one click.

www.jetbrains.com

여기서 다운로드 파일을 받아 설치합니다.

 

설치하면 우측 하단에 JetBrains 로고를 볼 수 있습니다.

Jetbrains 설치 후 사진
Jetbrains 설치 후 사진

약관을 동의하면, 설치 가능한 IDE 목록이 나옵니다.

Jetbrains toolbox / CLion
Jetbrains toolbox / CLion

CLion을 설치해줍니다.

 


다음은 WSL을 설정할 차례입니다.

 

우선 AMD를 사용하는 경우 별도로 활성화하지 않았다면 CPU 가상화꺼져있습니다.

BIOS에서 CPU 가상화를 켜야 WSL 사용할 수 있습니다.

 

 

Windows 기능 찾는 법
Windows 기능 찾는 법

에서 WSL을 활성화해줍니다. (+설정 변경 후 재부팅해야 합니다)

Windows 기능/WSL 활성화
Windows 기능/WSL 활성화

다음은 Microsoft Store에 들어가서 Ubuntu를 검색하고 설치해줍니다. (www.microsoft.com/store/productId/9NBLGGH4MSV6)

 

Microsoft Ubuntu
Microsoft Ubuntu

이제 Ubuntu를 실행해줍니다.

WSL init
WSL init

초기 설정으로 유저명, 비밀번호를 치는 화면이 나옵니다.

다음은 WSL에 빌드에 필요한 패키지와 SSH 설정을 위한 아래 명령어를 쳐줍니다.

sudo apt-get update
sudo apt-get install cmake gcc clang gdb build-essential
wget https://raw.githubusercontent.com/JetBrains/clion-wsl/master/ubuntu_setup_env.sh && bash ubuntu_setup_env.sh

WSL Settings
WSL Settings


이제 돌아와서 WSL을 켜줍니다.

CLion License
CLion License

계정이 있다면, 등록하고 없다면 Evaulate for free를 눌러 진행합니다.

CLion, Project create
CLion, Project create

new project를 누르고 아무거나 만들어줍니다.

Setting - Build...
Setting - Build...

File -> Settings -> Build, Execution, Deployment -> Toolchains

Toolchains 설정
Toolchains 설정

기본적으로 외부 컴파일러를 잡은 것을 볼 수 있습니다. WSL을 추가하려면 +버튼을 눌러서 WSL을 선택합니다.

WSL 선택하고 up을 눌러서 타컴파일러보다 위쪽에 배치해주세요.

WSL 우선순위 up
WSL 우선순위 up

이제 WSL에 접속하기 위해 username, password만 입력해주면 됩니다.

Credentials (인증 자격) 설정
Credentials (인증 자격) 설정

그런후, +를 누르고 Host(127.0.0.1), Port(2222), username, password를 차례로 입력한 뒤, Test Connection을 눌러주세요.

 

fingerprint 확인 후 아래와 같은 화면이 뜨면 성공한겁니다.

WSL 연결
WSL 연결
WSL - CLion connection succeed
WSL - CLion connection succeed

이제 WSL에서 컴파일러를 잡는 것을 볼 수 있습니다.

CLion, CMake error
CLion, CMake error

그런데 위와 같은 오류가 나는 분들이 계실겁니다.

WSL의 CMake 버전과 CMakeLists.txt의 버전이 일치하지 않아 생기는 오류입니다.

CMakeLists.txt vesion downgrade
CMakeLists.txt vesion downgrade

파일을 열어 1번째 줄의 VERSION 3.173.16으로 바꿔줍니다.

CLion refresh
CLion refresh

그런후, CMake에서 refresh 버튼을 눌러주면,

CLion, CMake 오류 해결
CLion, CMake 오류 해결

성공한 것을 볼 수 있습니다.

빌드 후 실행하는 방법은

CLion, How to run?
CLion, How to run?

상단 우측의 > 버튼을 눌러주면 됩니다.

 

 

종종 WSL을 사용할 때 자동 완성이 안되는 경우가 있습니다.

 1) Ubuntu 실행

 2) File -> Invalidate and Restart

를 하면 대개 해결됩니다.

CLion. Invalidate and Restart
CLion. Invalidate and Restart
CLion with WSL!
CLion with WSL!

잘되는 것을 볼 수 있습니다.

 

질문이나 오류가 있으면 댓글 달아주세요~!