VScode c++ 개발환경 설정

VScode 설치

https://code.visualstudio.com/download

플러그인 설치

작업폴더 추가

  • 작업폴더 생성 및 추가

WSL - 리눅스에서 GCC 컴파일러 설치

sudo apt-get update
sudo apt-get install build-essential gdb

whereis g++
whereis gdb

Visual code에서 compiler 지정

  • Ctrl + Shift + P -> C/C++: Edit Configuration (UI) 선택
  • 내 작업영역 폴더 선택
  • Configuration name (구성 이름)
    • win32 선택
  • Compiler path (컴파일러 경로)
    • /usr/bin/g++ 입력
  • IntelliSense mode (IntelliSense 모드)
    • gcc x64 선택

확장 플러그인으로 C++ 프로젝트 생성

  • 설치했던 Easy C++ Projects 확장 플러그인으로 CPP 프로젝트 생성
    • Ctrl + Shift + P -> Easy CPP/C++ : Create new C++ project
  • Compiler 지정
    • [WSL] Windows Subsystem for Linux
  • 완료 후 작업영역 안에 bin, include, lib, src 폴더 등등 프로젝트 환경이 만들어진 것을 확인

빌드 테스트

  • main.cpp 파일 확인 후 오픈한 다음 하단 상태바의 Build & Run 버튼으로 실행 확인

디버깅 및 환경 설정

  • c_cpp_properties.json

    {
      "configurations": [
          {
              "name": "Win32",
              "includePath": [
                  "${workspaceFolder}/**"
              ],
              "defines": [
                  "_DEBUG",
                  "UNICODE",
                  "_UNICODE"
              ],
              "compilerPath": "/usr/bin/g++",
              "cStandard": "c11",
              "cppStandard": "c++17",
              "intelliSenseMode": "gcc-x64"
          }
      ],
      "version": 4
    }
  • launch.json

    {
      "version": "0.2.0",
          "configurations": [
              {
                  "name": "(gdb) Launch",
                  "type": "cppdbg",
                  "request": "launch",
                  "program": "(작업폴더영역)/bin/main", // 빌드 완료 후 바이너리 파일이 생성되는 경로
                  "args": [""],
                  "stopAtEntry": true,
                  "cwd": "(작업폴더영역)", // 만든 작업영역 경로 (ex) /mnt/c/vscode/cpp_test
                  "environment": [],
                  "externalConsole": true,
                  "windows": {
                      "MIMode": "gdb",
                      "miDebuggerPath": "/usr/bin/gdb", // 위에서 설치한 gdb의 path, wsl 에서 whereis gdb 명령어로 확인 가능
                      "setupCommands": [
                          {
                              "description": "Enable pretty-printing for gdb",
                              "text": "-enable-pretty-printing",
                              "ignoreFailures": true
                          }
                      ]
                  },
                  "pipeTransport": {
                      "pipeCwd": "",
                      "pipeProgram": "c:\\windows\\sysnative\\bash.exe",
                      "pipeArgs": ["-c"],
                      "debuggerPath": "/usr/bin/gdb"
                  },
                  "sourceFileMap": {
                      "/mnt/c": "c:\\"  // 작업영역 폴더 위치 드라이브로 설정 (ex) D드라이브 -> "/mnt/d": "d:\\"
                  }
              }
          ]
      }
  • task.json

    {
      "version": "2.0.0",
      "tasks": [
          {
              "label": "Build C++ project",
              "type": "shell",
              "group": {
                  "kind": "build",
                  "isDefault": true
              },
              "command": "bash",
              "args": [
                  "-c",
                  "make"
              ]
          },
          {
              "label": "Build & run C++ project",
              "type": "shell",
              "group": {
                  "kind": "test",
                  "isDefault": true
              },
              "command": "bash",
              "args": [
                  "-c",
                  "make run"
              ]
          }
      ]
    }

'공부 > 프로그래밍' 카테고리의 다른 글

[React] 기본 공부  (0) 2018.12.04

+ Recent posts