Programming/C and C++

(macOS) VSCode C++ 개발 환경 구축하기

Jan92 2025. 1. 12. 22:26
반응형

(macOS) VSCode C++ 개발 환경 구축하기

VSCode C++ 개발 환경 구축

C++ 개발 환경에는 'Visual Studio'가 대표적인 IDE로 사용되는데요.

mac용 Visual Studio의 경우 2024년 8월 31일 부로 사용이 중지되었기 때문에 Visual Studio 대체제로 'VSCode(Visual Studio Code)'를 사용하여 C++ 개발 환경을 구축할 수 있습니다.

(Visual Studio가 전체 개발 환경 IDE인 반면, VSCode는 경량 코드 편집기로 볼 수 있습니다.)

 

해당 포스팅에서는 mac에서 C++ 개발 환경을 구축하기 위해 VSCode를 설정하는 과정을 정리하였습니다.

전체 과정은 아래 순서에 따라 진행됩니다.

 

1. VSCode(Visual Studio Code) 설치

2. Clang, LLDB 설치 확인

3. EXTENSIONS 설치(C/C++, Code Runner, CodeLLDB)

4. 코드 실행해 보기

5. Code Runner 추가 설정

6. CodeLLDB 추가 설정

 


1. VSCode 설치

visual studio code download

https://code.visualstudio.com/download

 

먼저 위 링크를 통해 환경에 맞는 'Visual Studio Code'를 다운로드하고 설치합니다.

(Intel chip || Apple silicon)

 

 


2. Clang, LLDB 설치 확인

이어서 mac에서 c++ 개발에 필요한 'Clang''LLDB'가 설치되어 있는지 확인이 필요한데요.

 

먼저 'Clang'은 C, C++, Swift 등의 프로그래밍 언어를 위한 컴파일러로 macOS에서 C, C++ 언어로 개발할 때 clang이 기본 컴파일러로 사용됩니다.

'LLDB'는 디버거이며, Xcode 및 macOS 개발 환경에서 주로 사용되는 디버깅 도구입니다.

(LLDB는 Clang과 함께 작동하며, 디버깅 중 프로그램 분석이나 중단점 설정, 변수 값 실시간 확인 등에 사용됩니다.)

 

 

clang, lldb 설치 확인

clang --version
lldb --version

clang, lldb 두 가지 도구는 터미널에서 위 명령어를 통해 설치 여부를 확인할 수 있는데요.

 

 

Xcode Command Line Tools 설치 확인

xcode-select --install

clang과 lldb는 'Xcode Command Line Tools'에 포함되어 있기 때문에 혹시나 설치가 되어 있지 않은 경우 Xcode Command Line Tools를 설치하면 됩니다.

(이미 설치된 경우 위 이미지와 같이 'command line tools are already installed' 메시지를 확인할 수 있습니다.)

 

 


3. EXTENSIONS 설치

C/C++, Code Runner, CodeLLDB 확장팩 추가

다음으로 설치된 VSCode에서 필요한 확장팩(C/C++, Code Runner, CodeLLDB)을 설치합니다.

 

첫 번째 설치할 extension은 Microsoft에서 제공하는 'C/C++' 확장팩으로 VSCode에서 기본적으로 C/C++ 언어를 사용할 수 있도록 하는 확장팩입니다.

 

두 번째 extension은 'Code Runner'입니다.

Code Runner는 C, C++, Java, Javascript, PHP, Python 등 여러 언어로 된 코드 조각이나 코드 파일을 실행시키는 확장팩입니다.

기본 설치 외 추가적인 설정이 조금 필요한데, 해당 부분은 아래에서 좀 더 자세하게 살펴보겠습니다.

 

세 번째 extension은 'CodeLLDB'로 C++, Rust 등의 컴파일 언어에서 사용되는 강력한 디버깅 도구입입니다.

마찬가지로 설치 외 추가적인 설정이 필요하며, 아래 부분에서 자세하게 살펴보도록 하겠습니다.

 

 


4. 코드 실행해 보기

Open Folder

이어서 프로젝트를 작업할 디렉터리를 먼저 생성합니다. 그리고 VSCode를 실행하여 이미지의 'Open Folder' 버튼을 통해 해당 디렉터리를 선택합니다.

(디렉터리 선택 시 'Do you trust the authors of the files in this folder?' 메시지가 뜨면 trust로 진행해 주시면 됩니다.)

 

 

main.cpp 파일 실행

이제 작업할 디렉터리에서 이미지 왼쪽에 보이는 'New File...' 버튼을 이용하여 main.cpp 파일을 생성합니다.

이미지에 보이는 코드를 입력한 뒤, 우측 'Run Code' 버튼을 통해 해당 코드를 실행하고 정상 동작하는 경우 아래와 같이 OUTPUT 쪽에 코드의 실행 결과가 나오는 것을 확인할 수 있습니다.

 

여기까지 c++(.cp) 파일을 컴파일하고 실행하는 기본적인 세팅이 완료되었는데요.

이어서 Code Runner, CodeLLDB 확장팩에 대한 설정을 추가로 진행해 보겠습니다.

 

 


5. Code Runner 추가 설정

Code-runner: Run In Terminal

EXTENSIONS 탭에서 'Code Runner' -> 'Settings'를 통해 설정 페이지로 접근할 수 있으며, 여기서 'Code-runner: Run In Terminal' 부분을 체크하여 실행되는 코드가 터미널을 통해 실행되도록 설정합니다.

 

Code-runner: Executor Map

이어서 마찬가지로 페이지 설정에서 'Code-runner: Executor Map'이라는 설정을 찾아볼 수 있는데요.

Executor Map은 각 언어에 대한 실행 명령어를 설정할 수 있는 부분으로 'Edit in setting.json' 부분을 통해 json 파일을 수정해야 합니다.

 

    "code-runner.executorMap": {
      ...

      "cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",

      ...
    },

해당 부분은 cpp, 즉 c++ 언어에 대한 실행 명령어가 설정된 부분인데요.

 

 

(변경 전)
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",

(변경 후)
"cpp": "cd $dir && g++ -std=c++17 *.cpp -o $fileNameWithoutExt && $dir$fileNameWithoutExt",

기존에 위와 같이 설정된 부분을 아래와 같이 변경합니다.

변경 내용은 '-std=c++17' 옵션을 통해 C++17 표준을 사용하여 코드를 컴파일하도록 변경하였으머, '*.cpp' 부분을 통해 단일 파일이 아닌 디렉터리 내의 모든 '.cpp' 파일을 컴파일하도록 처리하였습니다.

 

버전은 원하는 버전을 설정할 수 있으며, 단일 파일이 아닌 프로젝트 단위의 컴파일이 필요해지기 때문에 이와 같은 수정이 진행되었습니다.

 

 

Code Runner 설정 수정 후 실행 결과

Code Runner 설정을 수정한 뒤 main.cpp 파일을 다시 실행시키면 이미지와 같이 터미널에서 코드가 실행되는 것을 확인할 수 있으며, 실행 명령어도 수정된 명령어가 적용된 것을 확인할 수 있습니다.

 

 


6. CodeLLDB 추가 설정

create a launch.json file

좌측 Run and Debug 탭에서 'create a launch.json file.' 부분을 선택 후 우측 'C++ (GDB/LLDB)'를 선택합니다.

그리고 생성되는 launch.json 파일의 내용을 아래와 같이 변경합니다.

 

 

{
  "version": "0.2.0",
  "configurations": [
      {
          "type": "lldb",
          "request": "launch",
          "name": "Lldb debug",
          "program": "${fileDirname}/${fileBasenameNoExtension}",
          "args": [],
          "cwd": "${workspaceRoot}"
      }
  ]
}

 

여기까지 mac 환경에서 VSCode를 사용한 C++ 개발 환경 구축하기에 대한 내용입니다.

이제 막 C++에 대해 살펴보고 있기 때문에 부족한 부분이 많을 수 있습니다.

잘못된 부분이나 피드백 주실 부분은 댓글 남겨주시면 확인하여 답변드리겠습니다.

감사합니다.

 

 

< 참고 자료 >

https://areumdawoon.tistory.com/20
https://songacoding.tistory.com/49
https://justdoitproject.tistory.com/31

반응형