Linuxpia/Linux 명령어

[리눅스 명령어] 컴파일하기, make

Linuxpia4U 2023. 10. 24. 05:34
반응형

컴파일하기, make

`make`는 주로 소프트웨어 빌드 자동화 도구로 사용됩니다. GNU Make는 이 중에서 가장 널리 사용되는 버전입니다. `make`는 일반적으로 `Makefile`이라는 설정 파일을 읽어, 어떻게 프로그램을 컴파일하고 빌드할지 결정합니다.

기본 사용법

make [옵션] [타겟]


- 옵션: `make`의 동작을 제어하는 선택적 인자입니다.
- 타겟: 빌드할 목표를 지정합니다. `Makefile`에 정의된 타겟 중 하나를 선택할 수 있습니다.

주요 옵션


- `-f`, `--file`: 사용할 `Makefile`을 지정합니다.
- `-C`, `--directory`: 빌드를 수행할 디렉터리를 지정합니다.
- `-j`, `--jobs`: 동시에 수행할 작업의 수를 지정합니다. 멀티 코어 시스템에서 빌드 시간을 단축하는 데 유용합니다.

Makefile 예시


다음은 간단한 C 프로그램을 빌드하는 `Makefile`의 예시입니다.

all: hello

hello: hello.c
	gcc -o hello hello.c

clean:
	rm -f hello



- `all`: 기본 타겟입니다. `hello` 타겟을 의존성으로 가집니다.
- `hello`: `hello.c`를 컴파일하여 `hello` 실행 파일을 만듭니다.
- `clean`: 빌드로 생성된 실행 파일과 오브젝트 파일을 삭제합니다.

사용 예시


1. 모든 타겟 빌드

make


    또는

make all



2. 특정 타겟 빌드

make hello



3. 빌드 파일 삭제

make clean



4. 다중 쓰레드로 빌드

make -j4



`make` 명령어는 프로그램 빌드뿐만 아니라, 데이터 변환, 테스트 자동화, 배포 등 다양한 작업을 자동화하는 데 사용할 수 있습니다.

반응형