오늘은 맑음

[Linux] gcc를 이용한 컴파일 / Makefile study(1) 본문

Makefile

[Linux] gcc를 이용한 컴파일 / Makefile study(1)

자전거 타는 구구 2021. 4. 3. 22:21
반응형

 이전 makefile 포스팅에서는 직접 명령어를 넣는 방법보다는 덜 지저분한 방법으로 컴파일 하는 방법을 알아보았습니다. 이번 포스팅에서는 직접 명령어를 넣는 방법보다는 제공하는 매크로를 활용해 조금 덜 지저분한 방법으로 컴파일 하는 방법을 알아보겠습니다.

 사실 makefile은 처음 작성하는 프로젝트가 아니라면 이미 작성되어 배포되며, 타인이 작성한 스크립트를 이용해서 사용해도 됩니다. 하지만 언젠간 작업을 하다보면 makefile을 작성해야 할 때도 생기고, 혹은 수정해야 할 일이 생깁니다. 하지만 makefile에 대해 이해도가 없다면 작성하지도, 수정하지도 못하겠죠?

 

 따라서 이번 포스팅의 목적은 다음과 같습니다.

1. 타인의 makefile을 사용하더라도 알고 사용하자.

2. makefile을 작성/수정해서 사용하자.

 

 주로 makefile에서 사용하는 변수는 아래와 같습니다. 

  • CC : 컴파일러 종류(gcc, g++)
  • CFLAG : 컴파일 옵션
  • OBJS : object 파일 목록
  • SRCS : source 파일 목록, (SRC_DIRS를 이용해 directory를 지정할 수 있음)
  • TARGET : 실행파일 이름
  • LDFLAGS : 링커 옵션

makefile을 사용할 때 주로 사용되는 옵션은 아래와 같습니다.

  • make all(make)
  • make clean

위의 옵션은 makefile 내에서 작성 해야 동작합니다.

 

저도 공부하면서 글을 작성하는 만큼 차근차근 작성해보도록 하겠습니다.

 

Reference

gcc.gnu.org/onlinedocs/gcc-3.2/gcc/Optimize-Options.html

 

Using the GNU Compiler Collection (GCC)

After running a program compiled with -fprofile-arcs (see Options for Debugging Your Program or gcc), you can compile it a second time using -fbranch-probabilities, to improve optimizations based on the number of times each branch was taken. When the progr

gcc.gnu.org

wiki.kldp.org/KoreanDoc/html/GNU-Make/GNU-Make-7.html

반응형
Comments