[vscode]Mac(M1), include path문제(<SDL2/SDL.h>,homebrew)
1️⃣ #include 오류문제
- 최근에 M1기반 맥북을 샀는데 아직도 환경설정문제는 적응이 안되는 것 같습니다.
이번엔
<SDL2/SDL.h>
헤더파일을 이용하고 싶은데 다음과 같이 경로를 찾을 수 없는 오류가 발생했습니다.분명
SDL2 파일을homebrew 를 이용해서 설치해 줬고homebrew의 경로설정 도 다했는데..- 이처럼
SDL.h
헤더를 가진SDL2 폴더도 있는데 vscode는 왜 못찾을까?
2️⃣ includePath 오류 해결법
- 맥린이 입장에서는
homebrew로 파일을 설치 하면 알아서 컴파일러에 헤더파일경로를 추가해준다고 착각한 것이 문제였습니다. (어쩌면 있을수도있지만 찾지는 못했습니다) 다음과 같이
.json파일 의 include경로에homebrew의 헤더파일 경로 를 적어줬습니다.json
파일이 보이지 않는다면 다음과 같은 방법으로도 경로를 추가할 수 있습니다. (노란전구 클릭)- 다음과 같이 정상적으로 헤더파일(SDL.h)을 읽어서 함수(SDL내장)의 설명이 정상적으로 출력됨을 볼 수 있습니다.
3️⃣ 컴파일하기
위의처럼 Vscode에 경로를 가르쳐줘도 컴파일을 할때는
또다시 컴파일러에게 경로를 가르쳐줘야 합니다. 다음과 같은 컴파일 옵션을 추가해주어 경로를 가르쳐줘야 합니다.(homebrew의 경우 위치는 /opt/homebrew폴더안에서 잘 찾아보면 됩니다.)
-I
: include할 헤더파일의 주소-L
: 라이브러리를 찾을 디렉토리-l
: 컴파일할때 링크할 라이브러리이름