본문 바로가기
언어 정리/빌드툴(catkin_make,make,cmake)

CMake CMakeLists.txt 설명

by 알 수 없는 사용자 2023. 1. 2.

gcc 노가다가 싫어서

Makefile을 작성했는데

코드 수정할 때마다 Makefile의 의존성 업데이트가 싫어서 만든

CMakeLists.txt !

CMakeLists.txt 는 Makefile과 다르게 추상화된 빌드 툴이기 때문에 맨처음에 Build Step을 잘 구상해 놓고,  *.c *.cpp 소스파일만 등록해주면 의존성 업데이트를 할 필요가 없다!

이유는 CMake는 소스파일 내부까지 들여다보고 분석해서 의존성 정보를 스스로 파악하기 때문

기존의 Makefile   *.h -> *.c -> *.o -> app.out ( binery 파일 , 실행파일, 코드암호화 파일 )
CMakeLists.txt   *.c -> app.out ( binery 파일 , 실행파일, 코드암호화 파일 )  ##.h와 .o부분은 명시하지 않아서 자동 진행함.

 

결론 CMakeLists.txt 를 통해서 추상적으로 또는 직관적으로 Makefile을 작성해주는 것이다.

따라서 1."$ cmake CMakeLists.txt" 로 Makefile 작성 후 2."$ make"로 빌드 하는 과정 이다.

$ cmake CMakeLists.txt를 맨처음 명령어를 진행한 후 부터는, CMakeLists.txt를 수정한다면 $ make 만으로 cmake로 makefile업데이트 후 make 작업을 자동 진행하는 수순으로 간다.



 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

댓글