Visual Studio Code에서 MSVC 기반 C++, CMake 환경 설정하기
VSCode에서 Microsoft Visual Studio 빌드 도구인 MSVC를 이용하여 C/C++ 언어 및 CMake를 사용하기 위한 환경을 구축하는 방법에 대해 알아봅니다.
📝 노트
여기서는 VSCode 설치를 완료한 상태라고 가정합니다. VSCode 설치 및 기본 세팅은 이 글을 참고하세요.
❌ 주의사항
MSVC는 Windows에서만 이용 가능합니다. Linux나 Mac을 이용하시는 경우에는 gcc와 같은 다른 대안을 이용하시기 바랍니다.
VS2019 빌드 도구 설치
VSCode는 C 언어용 컴파일러나 디버거를 자체적으로 내장하고있지 않습니다. 때문에 C 언어를 VSCode에서 사용하려면, 컴파일러와 디버거를 직접 설치하고 이를 연동해주는 작업이 필요합니다.
❌ 주의사항
Extension을 설치한다고 해서 컴파일러나 디버거가 설치되는 것은 아닙니다.
이 글에서는 Microsoft사에서 제공하는 MSVC(Microsoft Visual C++)를 이용하여 진행할 것입니다.
다운로드
Microsoft에서 제공하는 Visual Studio 2019용 Build Tools는 이 링크에서 무료로 받을 수 있습니다. 아래 그림에서 보이는 다운로드 링크를 누르면 됩니다.
설치
다운받은 뒤 실행하면, 아래 그림과 같은 창이 뜰 것입니다. 이 중 C++를 사용한 데스크톱 개발을 클릭합니다. 오른쪽 설치 세부 정보에서, 자동으로 선택사항 중 일부가 선택될 것입니다. 혹시라도 Windows용 C++ CMake 도구가 선택이 안되어있다면, 꼭 선택해주시기 바랍니다. 선택을 완료하셨다면 설치를 진행하시면 됩니다.
실행
제대로 설치가 되었는지 확인해보겠습니다.
-
[WIN]+[S] 를 눌러 검색을 띄움
-
developer powershell
을 입력하여 Developer PowerShell for VS 2019를 찾은 뒤 실행 -
cl
명령어와cmake
명령어를 입력하여, 다음 그림과 같이 사용법(usage)이 뜨는지 확인
이제 여러분은 MSVC에 포함된 C/C++ 빌드 도구 및 CMake 도구를 사용할 수 있게 되었습니다.
Extension 설치
이제 VSCode에서 extension을 설치할 차례입니다.
C/C++
VSCode를 켜고 extension 탭으로 간 뒤 "c"를 검색하세요. 맨 위에 C/C++ extension이 뜰 것입니다. Install 버튼을 눌러 설치합니다.
CMake
이어서 CMake 관련 extension도 설치합니다.
VSCode를 켜고 extension 탭으로 간 뒤 “cmake“를 검색하세요. 맨 위부터 CMake와 CMake Tools가 뜰 것입니다. 두 가지 모두 Install 버튼을 눌러 설치합니다.
각각의 용도는 이렇습니다.
- CMake extension: CMake 명령어에 대한 자동완성 제공. CMakeLists.txt 파일 작성에 도움
- CMake Tools extension: CMake 기반 프로젝트를 관리하는데에 도움
테스트
이제 제대로 설치가 되었는지 확인할 시간입니다.
❌ 주의사항
경로에 한글이 있으면 제대로 동작하지 않습니다.
Hello world 프로젝트 만들어보기
CMake Tools는 CMake: Quick Start라는 기능을 제공합니다. 손쉽게 CMake 기반의 Hello world 프로젝트를 만들어주는 것이죠.
적당한 경로에 빈 폴더를 만들어주고 다음과 같이 진행합니다.
실행
다음 그림과 같이 실행하시면 됩니다. 동일 폴더 내에 .vscode라는 폴더가 생기고 그 안에 CMake 설정 등에 관한 .json
파일이 자동으로 생성될 것입니다. 또한, build라는 폴더가 생기고 그 안에 CMake를 통한 빌드 부산물 및 컴파일 결과물이 자동으로 생성될 것입니다.
이후 아래쪽의 TERMINAL 탭을 확인하시면, 자동 생성된 main.cpp의 내용대로 Hello, world!가 출력되는 것을 확인할 수 있습니다.
디버깅
다음 그림과 같이 진행하여 디버깅도 가능합니다.
❌ 주의사항
맨 처음 그림에서 보이는 바와 같이, CMake type을 Debug로 설정해야 함에 주의하세요!
Command line argument 설정
실행하거나 디버깅할 때, command line argument를 넘겨주도록 설정하고 싶을 때가 있습니다.
이는 .vscode/settings.json 파일을 생성해주고, 해당 파일에서 cmake.debugConfig
인자로서 입력해줘야 합니다.
테스트 코드 수정
그 전에 먼저 argument가 제대로 동작하는지 확인하기 위해 main.cpp 코드를 수정하겠습니다.
#include <iostream>
int main(int argc, char**) { // modified
std::cout << "Hello, world!\n";
std::cout << "argc: " << argc << std::endl; // added
}
이 상태로 그냥 실행해보면 다음과 같이 나타날 것입니다.
settings.json 설정 및 실행
이제 settings.json 파일을 만들어 보겠습니다. (이미 만들어져 있을 수도 있습니다만, 그대로 진행하시면 됩니다)
-
다음 그림과 같이 File - Preferences - Settings를 클릭합니다. 단축키는 [CTRL]+[,] 입니다.
-
여기서 Workspace 탭을 클릭합니다. 이 프로젝트(workspace)에만 적용되는 설정항목이라는 뜻입니다.
-
상단 검색창에
cmake.debugConfig
를 검색한 뒤, Edit in settings.json 부분을 클릭합니다.cmake.debug
정도만 입력하셔도 바로 뜰 것입니다. -
클릭하시면 바로 다음과 같이
.vscode/settings.json
폴더 및 파일이 생성되고, settings.json 파일이 열리며, 그 안에 다음 그림과 같은 내용이 자동으로 작성되어 있을 것입니다. (추가로 다른 내용이 더 쓰여있을 수도 있습니다.) -
이제 이 안에
args
항목을 만들어 command line argument를 설정합니다. 실행파일명 뒤에 이어질 추가적인 argument들만 적어주면 되며, 각 항목은 ""(double-quote)로 묶어주고 ,(comma)로 분리해주면 됩니다. -
이제 저장한 뒤, 실행이나 디버깅을 해보면 다음과 같이 command line argument가 잘 반영된 것을 확인할 수 있습니다.
Author And Source
이 문제에 관하여(Visual Studio Code에서 MSVC 기반 C++, CMake 환경 설정하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@evanote/Visual-Studio-Code에서-MSVC-기반-C-CMake-환경-설정하기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)