CMake는 Make를 사용할 적에 흘리듯이 들었던 링크, 의존성 등의 과정에서 문제가 아주 효율적으로 해결된다.
CMake도 Make와 마찬가지로 의존성 검사를 해서 빌드되지만, 큰 차이점은 CMake는 의존성 정보를 스스로 파악한다는 것이다.
Make에서는 빌드시 중간과정의 Object파일의 이름, 의존성 정보들까지 입력해야 하지만, CMake는 그렇지 않다는 것이다.

정말 간단한 예제를 보자.

# CMake의 최소 버전 입력
cmake_minimum_required(VERSION 3.24)

# CMake의 변수 생성 { PROJECT_NAME = "cmake_project_example"}
set(PROJECT_NAME cmake_project_example)
# CMake에서의 C++ 사용버전
set(CMAKE_CXX_STANDARD 17)

# project 생성
project(${PROJECT_NAME})

# project의 소스 파일 추가
add_executable(${PROJECT_NAME} src/main.cpp)

이렇게 우리가 사용할 CMakeList.txt가 생성되었다.
Header파일도 Object파일도 명시되어있진 않지만 CMake는 내부적으로 처리된다.
(혹시, Object파일이 보고 싶다면 Build파일을 잘 살펴보시길 바랍니다.)

'CMake' 카테고리의 다른 글

CMake[02]  (0) 2022.10.12
CMake[00]  (0) 2022.10.12

+ Recent posts