raylib:raylib_를_cpp로_vs_code_에서_사용하기
raylib 를 cpp로 vs code 에서 사용하기
차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판이전 판다음 판 | 이전 판 | ||
raylib:raylib_를_cpp로_vs_code_에서_사용하기 [2023/10/30 10:45] – 이거니맨 | raylib:raylib_를_cpp로_vs_code_에서_사용하기 [2023/11/20 00:27] (현재) – 이거니맨 | ||
---|---|---|---|
줄 70: | 줄 70: | ||
{{ : | {{ : | ||
+ | |||
+ | |||
+ | ==== Makefile ==== | ||
+ | |||
+ | 위 템플릿을 기존 Raylib 에 있던 c를 위한 컴파일 설정을 c++ 로 컴파일을 하게 바꾼 것이다. | ||
+ | |||
+ | 따라서 그 원리를 이해하면 좋을 것이다. | ||
+ | |||
+ | |||
+ | Makefile은 다음과 같이 c++에 대한 컴파일러인 g++.exe로 바뀌고 그에 따라 설정도 바뀌었다. | ||
+ | |||
+ | 솔직히 첨부된 Makefile에서 웹이나 기타 리눅스, OSX(맥)에 대한 것들은 지원도 상관 없다. 물론 본인이 리눅스 등 해당 플랫폼을 쓴다면 윈도우에 대한 설정도 지워도 상관 없다. 향후에는 간략화된 | ||
+ | |||
+ | === 가. C 버전의 Makefile === | ||
+ | |||
+ | 기존 C버전의 Makefile은 다음과 같다. 이게 가장 핵심 명령어이다. | ||
+ | <code c> | ||
+ | # Define default C compiler: gcc | ||
+ | # NOTE: define g++ compiler if using C++ | ||
+ | CC = gcc | ||
+ | |||
+ | # Define default make program: Mingw32-make | ||
+ | MAKE = mingw32-make | ||
+ | |||
+ | # Define compiler flags: | ||
+ | # -O0 defines optimization level (no optimization, | ||
+ | # -O1 defines optimization level | ||
+ | # -g | ||
+ | # -s strip unnecessary data from build -> do not use in debug builds | ||
+ | # -Wall turns on most, but not all, compiler warnings | ||
+ | # -std=c99 | ||
+ | # -std=gnu99 | ||
+ | # -Wno-missing-braces | ||
+ | # -D_DEFAULT_SOURCE | ||
+ | # -ftime-report | ||
+ | CFLAGS += -Wall -std=c99 -D_DEFAULT_SOURCE -Wno-missing-braces | ||
+ | |||
+ | ifeq ($(BUILD_MODE), | ||
+ | CFLAGS += -g -O0 | ||
+ | else | ||
+ | CFLAGS += -s -O1 | ||
+ | endif | ||
+ | |||
+ | CFLAGS += $(RAYLIB_PATH)/ | ||
+ | # ROOT_DIR: | ||
+ | # CFLAGS += $(ROOT_DIR)/ | ||
+ | | ||
+ | # Define include paths for required headers | ||
+ | # NOTE: Several external required libraries (stb and others) | ||
+ | INCLUDE_PATHS = -I. -I$(RAYLIB_PATH)/ | ||
+ | ifneq ($(wildcard / | ||
+ | INCLUDE_PATHS += -I/ | ||
+ | endif | ||
+ | </ | ||
+ | |||
+ | |||
+ | === 나. C++ 버전의 Makefile === | ||
+ | |||
+ | 컴파일러와 플래그만 C++에 맞게 바꿔주면 된다. 즉 다음 부분만 바꿔 주면 된다. | ||
+ | |||
+ | <code c++> | ||
+ | # Define default C compiler: gcc | ||
+ | # NOTE: define g++ compiler if using C++ | ||
+ | CC = g++ | ||
+ | |||
+ | CFLAGS += -Wall -std=c++14 -D_DEFAULT_SOURCE -Wno-missing-braces | ||
+ | </ | ||
+ | |||
+ | ==== tasks.json ==== | ||
+ | |||
+ | .vscode | ||
+ | |||
+ | 여기에는 컴파일러가 만드는 어셈블러파일, | ||
+ | |||
+ | c 프로젝트에서는 " | ||
+ | |||
+ | 다음과 같이 말이다. | ||
+ | |||
+ | <code cpp> | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | "B | ||
+ | </ | ||
+ | |||
+ | ==== 템플릿 파일들 ==== | ||
+ | |||
+ | 기존 템플릿 파일을 참조하는게 가장 손쉽긴 하다. | ||
+ | |||
+ | c 버전은 [[https:// | ||
+ | |||
+ | c++ 버전은 내가 만들어 둔 강좌 중 아무 프로젝트나 가져와서 지우고 새롭게 만들면 된다. | ||
+ | |||
+ | [[raylib: | ||
+ | |||
===== 더보기 ===== | ===== 더보기 ===== | ||
줄 77: | 줄 175: | ||
[[raylib: | [[raylib: | ||
- | [[raylib: | + | [[raylib:flappybird: |
raylib/raylib_를_cpp로_vs_code_에서_사용하기.1698630355.txt.gz · 마지막으로 수정됨: 2023/10/30 10:45 저자 이거니맨