makefile 을 만드는 이유

- Makefile 을 만드는 가장 큰 이유는, 컴파일을 쉽고 빠르게 하기 위해서 이다.

- e.g. hello.c hello2.c hello3.c 를 각각 컴파일 하지 않고 한번에 하기 위해


window 에선 visual studio 와 같은 IDE 를 이용하여 간편하게 할 수 있지만,

linux 에선 visual studio 를 사용할 수 없기 때문에 makefile 을 만들어 단축키 형태로 사용하게 되는 것이다.


하지만 이러한 makefile 의 경우, 다른 build 환경 (i.e., 다른 OS 환경 with 다른 setting) 에서는 오류가 나는 경우가 빈번하다.


build 환경에 의존성을 지니고 있기 때문이다.

다른 빌드 환경일 때마다 일일이 설정을 바꿔주고 하는 것은.. 정말 상상만 해도 귀찮은 일이다.


더군다나 오픈소스화 되어 모두가 코드를 금방 다운받아 활용하는 시대에 에러가 난다고 어떻게 고쳐야 하냐고 불평이 들어오면 그것도 고통이 이만저만이 아닐 것이다.


CMake 가 바로 이러한 문제를 해결해준다.

빌드환경에 상관없이 컴파일을 할 수 있게 해준다.


따라서 오픈소스 코드의 경우, CMake 를 활용하는 것을 확인할 수 있다.

오픈소스 Deep Learning framework 인 Caffe 의 코드를 보면 CMake 를 활용하는 것을 확인할 수 있다.


WRITTEN BY
서상호

,