반응형
오랜만에 기분좋게 42서울 과제를 해결하려 vscode를 실행했다. 그런데 갑자기 #include errors detected 라는 이상한 오류가 뜨기 시작했다. gcc를 이용해서 컴파일 할 때는 문제가 없었지만, 상당히 거슬렸다. 이유를 하나하나 찾아가 보았다.
M1맥의 gcc 또는 g++
gcc와 g++은 각각 c언어 컴파일러, c++ 컴파일러이다. vscode에서는 c(++)에 관한 플러그인이 있는데, 이는 자동으로 컴파일러의 위치를 파악해 코드의 오류를 찾아낸다. 하지만 무슨 이유인지는 모르겠지만, M1맥 에서는 gcc(g++) 경로를 찾지 못하는 모습을 보였다. 아마도 수동으로 C/C++ Extension에 컴파일러 경로를 설정하면 될 것 같았다.
컴파일러 위치 찾기
최근에도 이걸 사용한 것 같다. 터미널 열고 gcc --version 치면은 컴파일러 위치가 다 나온다.
InstallDir 을 보면 컴파일러 설치 경로가 나온다. 이것을 C/C++ Extension의 CompilerPath에 붙여주자.
command + p 누르고 c_cpp_properties.json 파일을 수정하자. compilerPath에 경로/g++ 붙여주자. 그냥 복붙하지 말고, compilerPath를 확실히 보고 필요하다면 수정해서 입력하자.
{
"configurations": [
{
"name": "Mac",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [],
"macFrameworkPath": [],
"cStandard": "c17",
"cppStandard": "c++17",
"intelliSenseMode": "macos-gcc-arm64",
"compilerPath": "/Library/Developer/CommandLineTools/usr/bin/g++"
}
],
"version": 4
}
이렇게 하면 다음과 같이 에러가 사라진다. 문제의 원인은 인텔 맥과 M1맥의 설정 동기화? 같은데 정확히는 잘 모르겠다. 여튼 문제는 해결을 했으니, 편안하게 문제나 풀어야겠다.
반응형
'프로그래밍 언어 > C C++' 카테고리의 다른 글
맥에서 <bits/stdc++.h> 사용하기 (0) | 2021.08.17 |
---|---|
C++ deque 자료형 사용법 (0) | 2021.07.05 |
C++ list 자료형 사용법 (0) | 2021.06.21 |
C++ map 자료형 사용법 (0) | 2021.06.19 |
C++ set 자료형 사용법 (0) | 2021.06.13 |