홍로그

극주관주의 포스팅

m1 맥에서 C++ 코딩환경 구축하기

대학교에서 사용할 목적으로 몇달전 맥북에어를 구매했다

컴공이라 당연 코딩도 해야하는데 맥에선 파이썬은 별 문제없이 쉽게 사용할 수 있지만 C++로 코딩을 하려면 몇가지 번거로운 세팅이 좀 필요했다

그래서 패러렐즈를 사용해 맥에서 가상윈도우 환경을 구축해서 윈도우 비주얼 스튜디오로 코딩환경도 구축하고 한컴 같은것도 사용을 하려고 했다

하지만 이번에 맥이 인텔 cpu에서 m1 칩셋으로 넘어오게 되면서 윈도우와 호환성에 많은 문제가 있었고 어떻게 어거지로 비주얼 스튜디오로 c++ 코딩이 가능하게끔까진 세팅을 해봤지만 실행 속도가 너무 느렸고 또 오류도 너무 많아서 도저히 사용할 환경이 안됐다

그래서 그냥 가상윈도우를 서브로 사용하는건 냅다 포기해버리고 (윈도우와 맥에서 한컴이나 워드 파일을 주고받으면 서식이 좀 깨지는건 감수해야지뭐 ㅜㅜ) 패러렐즈도 환불하고 맥자체에서 코딩을 바로 할 수 있는 환경을 구축하기로 했다

여러가지 방법이 있겠지만 난 그 방법들 중에서 vscode를 사용하기로 했다

비주얼스튜디오는 m1맥에서 설치를 지원하지 않지만 Visual Studio Code는 m1맥에서 설치가 가능하다

https://code.visualstudio.com/download

우선 사용을 위해 vscode를 설치를 해줘야하는데 위 링크를 통해서 vscode를 설치해주면 된다

설치가 완료되었으면 좌측 탭에서 마켓플레이스 메뉴로 들어간 후 C/C++, CodeLLDB, Code Runner 이 세가지를 검색해 다운해준다

다음은 Code Runner의 저 톱니바퀴부분을 눌러서 확장설정으로 들어가주고

Executor Map이라 되어있는 메뉴에서 ‘settings.json’에서 편집을 눌러준다

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
{
    “git.ignoreMissingGitWarning”true,
    “code-runner.runInTerminal”true,      
    “C_Cpp.updateChannel”:“Insiders”,
    “editor.multiCursorModifier”“ctrlCmd”,
    “C_Cpp.default.cppStandard”“c++17”,
    “C_Cpp.default.cStandard”“c11”,
    “code-runner.executorMap”: {
        
        “javascript”“node”,
        “java”“cd $dir && javac $fileName && java $fileNameWithoutExt”,
        “c”“cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt”,
        “cpp”“cd $dir && g++ -std=c++17 $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt”,
        “objective-c”“cd $dir && gcc -framework Cocoa $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt”,
        “php”“php”,
        “python”“python -u”,
        “perl”“perl”,
        “perl6”“perl6”,
        “ruby”“ruby”,
        “go”“go run”,
        “lua”“lua”,
        “groovy”“groovy”,
        “powershell”“powershell -ExecutionPolicy ByPass -File”,
        “bat”“cmd /c”,
        “shellscript”“bash”,
        “fsharp”“fsi”,
        “csharp”“scriptcs”,
        “vbscript”“cscript //Nologo”,
        “typescript”“ts-node”,
        “coffeescript”“coffee”,
        “scala”“scala”,
        “swift”“swift”,
        “julia”“julia”,
        “crystal”“crystal”,
        “ocaml”“ocaml”,
        “r”“Rscript”,
        “applescript”“osascript”,
        “clojure”“lein exec”,
        “haxe”“haxe –cwd $dirWithoutTrailingSlash –run $fileNameWithoutExt”,
        “rust”“cd $dir && rustc $fileName && $dir$fileNameWithoutExt”,
        “racket”“racket”,
        “scheme”“csi -script”,
        “ahk”“autohotkey”,
        “autoit”“autoit3”,
        “dart”“dart”,
        “pascal”“cd $dir && fpc $fileName && $dir$fileNameWithoutExt”,
        “d”“cd $dir && dmd $fileName && $dir$fileNameWithoutExt”,
        “haskell”“runhaskell”,
        “nim”“nim compile –verbosity:0 –hints:off –run”,
        “lisp”“sbcl –script”,
        “kit”“kitc –run”,
        “v”“v run”,
        “sass”“sass –style expanded”,
        “scss”“scss –style expanded”,
        “less”“cd $dir && lessc $fileName $fileNameWithoutExt.css”,
        “FortranFreeForm”“cd $dir && gfortran $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt”,
        “fortran-modern”“cd $dir && gfortran $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt”,
        “fortran_fixed-form”“cd $dir && gfortran $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt”,
        “fortran”“cd $dir && gfortran $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt”
    }
}
cs

그리고 그 안에 위에있는 코드를 붙여넣기 해주면 된다

다음은 C/C++ 컴파일러를 설치해줘야한다

그에 앞서 먼저 homebrew를 설치해야하는데 터미널앱을 실행시켜서

1
/bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)”
cs

이 명령어를 입력해주면 자동으로 m1버전으로 설치가 된다

1
brew install cask
cs

홈브류 설치를 완료했다면 위 명령어로 cask를 설치를 해주고

1
xcode-select –install
cs

마지막으로 위 명령어를 통해 xcode까지 설치를 완료하면 c/c++ 컴파일러가 자동으로 설치된다

이렇게 환경은 모두 구축했으니 .cpp 파일을 만들어서 열던지 아님 vscode에서 새 파일을 만들어서 열심히 코딩을 하면 되겠다