본문 바로가기

IT/Linux

cmake 과정

설치가 되었으면 CMakeLists.txt파일을 만듭니다. (참고로 파일명을 주의해야합니다. 특히 대소문자 구분해서 CMakeLists.txt파일입니다.)

위의 소스의 리스트를 빌드하겠습니다.([C++] Make와 Makefile 작성법에서 사용하던 소스들...)

 

Makefile로 작성할 때는 여러 의존성 관계까지 작성을 했는데 cmake의 빌드 파일인 CMakeLists.txt은 엄청 심플하네요.

 

이걸로 Makefile 파일을 작성하겠습니다.

 

cmake를 실행하면 3개의 파일과 1개의 디렉토리가 생긴 것을 확인할 수 있습니다.

그럼 저 Makefile를 make하기 전에 Makefile의 내용을 살펴보겠습니다.

무언가 엄청난 빌드 파일입니다... 자세히 분석해 보면 이해를 하겠는데... 굳이 이해할 필요는 없습니다.

 

그대로 make를 합니다.

main.exe파일이 생성되었습니다. 실행해 보겠습니다.

작성된 프로그램대로 출력이 되었습니다.

 



사실 cmake파일을 사용하는 이유는 좀 더 복잡한 구조의 프로젝트를 빌드하기 위한 프로그램입니다. 좀 더 복잡하게 설정하겠습니다.

디렉토리 구조는 위와 같이 작성하고 메인 프로그램은 main 폴더입니다.

common은 공통 해더 파일을 두는 폴더입니다.

lib은 lib은 라이브러리 소스입니다.

 

위 예제는 이전의 예제보다 라이브러리를 추가하여 참조하는 방식의 빌드 구조입니다. 즉, 프로젝트를 분리해서 참조하는 것과 같은 것이다.

 

MakeFile이 만들어 졌습니다.

 

이제 make로 빌드를 하겠습니다.

실행 파일을 만들겠습니다.

생성된 실행 파일을 실행하니 hello world, function함수 호출한 것, library 참조한 함수를 호출한 내용까지 제대로 출력이 되었습니다.

 

마지막으로 make install로 파일이 복사가 되는지 확인해 보겠습니다.

제대로 파일이 복사가 되었습니다. cmake 기능이 더 있기는 하는데, 제 경험으로는 거의 여기까지 사용했던 걸로 기억합니다. 뭐, visual studio가 있는데....

 

 

 

 

'IT > Linux' 카테고리의 다른 글

make install  (0) 2020.09.28
CMake Build System / gcc, make, cmake 차이점  (0) 2020.09.28
vi 편집기 검색, 하이라이트 설정  (0) 2020.09.28
vi 편집기 라인 복사  (0) 2020.09.28
vi 편집기 라인 출력  (0) 2020.09.28