CMake Part4 - 색상 지정

set 변수를 사용해 Shell에 출력되는 문자들의 색상을 지정할 수 있다. if(NOT WIN32) string(ASCII 27 Esc) set(ColourReset "${Esc}[m") set(ColourBold "${Esc}[1m") set(Red "${Esc}[31m") set(Green "${Esc}[32m") set(Yellow "${Esc}]33m") set(Blue "${Esc}]34") set(Magenta "${Esc}]35m") set(Cyan "${Esc}]36m") set(White "${Esc}[37m") set(BoldRed "${Esc}[1;31m") set(BoldGreen "${Esc}[1;32m") set(BoldYellow "${Esc}[1;33m") set(BoldBlue "${Esc}[1;34m") set(BoldMagenta "${Esc}[1;35m") set(BoldCyan "${Esc}[1;36m") set(BoldWhite "${Esc}[1;37m") endif() 위의 내용을 .cmkae파일로 만들어 include하거나 CmakeLists.txt 의 상단에 삽입한다. Example message(" ") message( "${BoldGreen}\t\t\t[ BUILD SUMMARY ] ${White}" ) message( "${BoldWhite}------------------------------------------------------------------------${ColourReset}"

February 1, 2020 · 1 min · 69 words · ralpioxxcs

CMake Part3 - 프로젝트 구성

어떤 프로젝트를 cmake를 이용하여 관리 및 빌드하고자 할때, CMakeLists.txt를작성 시 자주 사용되는 cmake 기본 명령어들이 있다. (Root) |- CMakeLists.txt |- README.md |- [src] | |- CMakeListst.txt | |- foo.cpp | |- poo.cpp | |- main.cpp |- [include] | |- foo.h | |- poo.h |- [cmake] | |- options.cmake 이런 구조를 가지는 프로젝트 폴더가 있다고 할 때, CMakeLists.txt는 아래와 같다. # [/CMakeListst.txt] cmake_minimum_required(VERSION 3.3) project(foo CXX) # -> 'foo'라는 project를 정의한다. # cmake files list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) include(options) # -> project 설정관련 전반 ....

January 30, 2020 · 1 min · 164 words · ralpioxxcs

CMake Part2 - Commands & Vars

1. project 초기 설정 CMAKE_MINIMUM_REQUIRED [용법] cmake_minimum_required(VERSION major.minor[.patch[.tweak]][FATAL_ERROR]) 만약 어떤 오픈소스 라이브러리가 cmake 3.0 버전 이상으로 작성 되었고, 현재 나의 빌드환경은 cmake 2.8버전 미만이라면 빌드 시, 다음의 에러가 출력된다 -> CMake 3.0 or higher is required. You are running version 2.8.12.2 이 커맨드는 반드시 CMakeListst.txt 작성시 맨 처음에 선언 해 놓아야 정상적인 버전 호환 에러를 출력할 수 있다. # Bad example project(foo) cmake_minimum_required(VERSION 3.0) message("Using CMake version ${CMAKE_VERSION}") PROJECT [용법]...

January 20, 2020 · 4 min · 843 words · ralpioxxcs

CMake Part1 - Overview

CMake? cmake란 cross platform 기반의 프로젝트 전체 빌드 프로세스를 관리해주는 유용한 툴이다. 직접 빌드를 수행하지는 않지만 지정된 OS에 맞는 Make파일 혹은 **솔루션(sln)**파일의 생성을 도와주어 소스코드 빌드를 편리하게 해준다. Cmake의 장점 (root) |- foo.cpp |- CMakeLists.txt foo.cpp 라는 소스코드가 하나 있다고 가정하자. 이 소스코드를 각각의 다른 OS에서 빌드할 때, 윈도우즈라면 Visual Studio를, OSX라면 Xcode, Linux라면 Makefile을 이용할것이다. Cmake는 이런 귀찮은 과정을 CMakeLists.txt라는 프로젝트를 정의하는 파일을 하나 만듦으로써, 각 OS에 맞는 Build tool을 파악해 build command만 입력하면 될수 있도록 해준다....

January 19, 2020 · 1 min · 186 words · ralpioxxcs