반응형

Programming Tools/CMake 6

[CMake] Library Options : 라이브러리에 옵션을 추가하기

소제목 이번에는 CMake에서 각각의 라이브러리에 옵션을 달아 줄 것이다. 우리가 추가해줬던 adder.h를 쓰냐, 안쓰냐에 따라서 (이것이 옵션이 된다.) 출력되는 결과물이 달라지게 하는 것이 목표다. CMakeLists.txt를 다음과 같이 수정한다. cmake_minimum_required(VERSION 3.21.1) # 프로젝트명 : 실행파일 이름이 된다. 버전도 여기에 적을 수 있다. project(OLAS VERSION 1.0) # adder use logic # 라이브러리에 option을 준다. # OFF로 바꾸면 subdirectory를 빌드에서 추가하지 않게 되는 코드로 사용하고자 한다. 더 아래의 코드와 함께 사용해서 말이다. option(USE_ADDER "A simple librar..

[CMake] Git Submodules/external library(서브모듈, 외부 라이브러리)를 이용하기

Git Submodules를 이용해보자. Git에 대해서 잘 모른다면, 혹은 Git 관련 커맨드라인 명령어에 대해서 잘 모른다면 다음 글을 먼저 읽어보자 2021.08.04 - [Computer_Engineering/Git] - [Git] 초보를 위한 깃허브 사용법 (Github) 1편 2021.08.06 - [Computer_Engineering/Git] - [Git] 초보를 위한 깃허브 사용법 (Github) 2편 Git에서 submodule의 의미는 다음 글들을 읽어보는 것이 더 좋을 것 같다. git에서 submodule이란??? Git 의 서브모듈(Submodule) - Sungho's Blog (sgc109.github.io) 다음 .gitignore파일을 추가하자. # Prerequisite..

[CMake] Versioning the Source Code : CMakeLists를 통해 소스코드 버전명 만들기

CMakeLists를 통해 프로젝트 버전명 만들기 CMakeLists.txt는 다음과 같이 고친다. cmake_minimum_required(VERSION 3.21.1) # 프로젝트명 : 실행파일 이름이 된다. 버전도 여기에 적을 수 있다. project(OLAS VERSION 1.0) # 헤더 파일에도 이 버전에 대해서 인지시킨다. # Input/Output 순서로 적는다. configure_file(OLASConfig.h.in OLASConfig.h) # 빌드해서 나올 것들. 프로젝트명을 실행파일 이름으로 한다. 빌드 대상은 main.cpp add_executable(${PROJECT_NAME} main.cpp) # 헤더파일을 input에서 output으로 만드는 데 필요한 경로를 입력한다. # ve..

[CMake] Makefile과 CMake

Makefile에 대한 소개 makefile은 컴파일 작업에 있어서 여러번 터미널창에 쳐야하는 명령어들을 하나의 파일에 모아서 작성한 것입니다. default: gcc main.cpp -o out 라고 작성하면, 터미널 창에 make라고 입력했을 때 터미널 창에 자동으로 `gcc main -o out`이 입력됩니다. 이를 이용하면 간단하게 out이라는 이름의 실행파일이 생성됩니다. 여러개의 파일을 동시에 컴파일 해보자 main.c, foo1.c, foo2.c를 각각 컴파일하여 Object파일을 생성하고, 링크를 통해서 a.out을 생성합니다. 여기서 foo1과 foo2는 main에 대해 의존성이 발생합니다. 원래는 이렇게 컴파일하려면 다음과 같이 CLI에서 명령해줘야합니다. gcc -c -o main.o..

[CMake] Makefile과 CMake 학습 자료 정리

블로그 구글 검색을 통해서 나온 글 중에서는 이 사이트의 설명이 가장 좋았다. Makefile을 사용하는 이유가 그저 명령어 여러번 치기 싫어서인 줄 알았는데, 해당 글을 보면서 Incremental Build라는 개념도 알게 되었다. 가능하면 아래의 유튜브 영상을 보기 전에 정독해보는 편이 좋을 것 같다. 꼭 외우거나 할 필요는 없다. [Make 튜토리얼] Makefile 예제와 작성 방법 및 기본 패턴 - ECE - TUWLAB [Make 튜토리얼] Makefile 예제와 작성 방법 및 기본 패턴 - ECE - TUWLAB 리눅스 환경에서 소스코드를 다운받아서 수동으로 프로그램 설치를 해 보신 분들은 다음 세 줄의 명령어에 매우 익숙할 것입니다. ./configure make sudo make ins..

반응형