Study/IT & Computer

build(빌드), make(메이크) 그리고 cmake에 대한 간략 설명

13.d_dk 2023. 5. 15. 21:26
728x90
반응형

build

  • 소스 코드를 컴파일하고 링크하고 필요한 모든 라이브러리를 연결하여 실행 가능한 파일을 만드는 것을 포함
  • 간략하게는 compile과 link를 작업하는 것이라고 볼 수 있음

 

make

  • 빌드 프로세스를 자동화하는 데 사용할 수 있는 도구
  • 기존 방식 build는 파일 하나만 수정되어도 다 수정하여 비효율적이나, make는 주어진 shell 명령어를 조건에 맞게 실행하는 프로그램으로 어떤 조건으로 실행할지 담겨진 파일인 makefile을 사용
  • 즉, makefile이라는 파일을 통해(자동화!) 소스 코드를 컴파일하고 링크하고 필요한 모든 라이브러리를 연결

 

build vs. make

  • build : 소스 코드를 실행 파일 또는 라이브러리로 변환하는 프로세스
  • make : GNU make와 같은 도구를 사용하여 빌드 프로세스를 자동화하는 프로세스

 

cmake

  • make와 거의 같음 ... 즉, 빌드 자동화 프로세스 도구!
  • 소스 코드 변경 시 빌드 프로세스를 자동으로 실행할 수 있으며 특정 조건에서만 빌드 프로세스를 실행하는 데 사용할 수 있음 (일반적인 make와의 차이점)
  • make와의 차이점은 header를 보고 변경된 부분만 make할 수 있음 (특정 조건) ... cmakefile로 정리 및 업데이트
  • CMake는 C/C++와 같은 다양한 프로그래밍 언어를 지원
  • Windows, Linux 및 macOS를 포함한 다양한 운영 체제를 지원
반응형