CMake 사례 연구 노트 (A) : 사용 cmake는 간단한 프로그램을 컴파일

빌드로 간단한 프로그램의 완성

새 폴더를 만들고, 다음과 같은 두 개의 파일이 포함되어 있습니다

  • main.c를
#include <stdio.h>
int main()
{
   printf("Welcome to my Blog!\n");
   return 0;
}
  • CMakeLists.txt
PROJECT(HELLO)
SET(SRC_LIST main.c)
MESSAGE(STATUS "This is BINARY dir" ${HELLO_BINARY_DIR})
MESSAGE(STATUS "This is SOURCE dir" ${HELLO_SOURCE_DIR})
ADD_EXECUTABLE(hello ${SRC_LIST})

구축 시작

mkdir build
cd build
cmake .. #开始构建
make  #工程的实际构建
./hello #执行生成的可执行文件

그림 삽입 설명 여기
파일의 다음 세대를 구축 :
그림 삽입 설명 여기

CMkeLists.txt 프로파일 의미

  • PROJECT(HELLO)
     형식 : 프로젝트 (프로젝트 이름 [CXX는 [C] [자바])
     1. 프로젝트의 이름을 정의 본원 쓸 수 SET(SRC_LIST “main.c”)
     2. cmake 내재적 두 변수를 정의
    <projectname>_SOURCE_DIR (指代工程路径)
    <projectname>_BINARR_DIR (指代编译路径)
     프로젝트 이름의 정면은 사용자 자기 한정이고; ( 여기에서 두 변수가 직접 메시지가 출력)
  • SET(SRC_LIST main.c)
     형식 : 다음 SET (VAR의 [캐시를 참조 문 유형 [힘] [VALUE의])
     소스 파일의 복수 SET (main.c에의 mian2.c의 mian3.c) 순차적으로 정의 될 수있는 경우 주로 명시 적 변수들을 정의하는데 사용
  • MESSAGE
     형식 : 메시지 ([SEND_ERROR | 상태 (STATUS) | FATAL_ERROR] ... "디스플레이에 메시지")
     세 종류를 포함하고, 상기 단말기 사용자가 정의한 정보를 출력 :
    SEND_ERROR : 에러 생성 처리는 스킵된다.
    SATUS : 출력 접두사 -
    인 FatalError : 모든 프로세스 cmake 즉시 종료
  • ADD_EXECUTABLE(hello ${SRC_LIST})
     정의는 실행 파일을 생성합니다 프로젝트는 관련 소스 파일이 여기 속기로 변경할 수 있습니다, CMakeLists.txt 정의 된 소스 파일의 SRC_LIST의 목록입니다, 안녕하세요라고 :
PROJECT(HELLO)
ADDEXECUTABLE(hello main.c)

참조 및 노트 pdf 다운로드

게시 82 개 원래 기사 · 원의 찬양 (124) · 전망 (110) 000 +

추천

출처blog.csdn.net/qq_44717317/article/details/104613695