GNU Make 입문 1/2
소개
신졸 SE 견습생(투고 당시)의 푸르푸에입니다.
전혀 다른 일에 할당되었으므로, 잊지 말고 문자에 일어나려고 하는 곳입니다.
문턱을 낮추려고 한 결과, 추상 표현도 산견합니다. 미리 양해 바랍니다.
이 엔트리가 나와 같은 초보자 C계 프로그래머씨의 엔트리가 되면 기쁜 한입니다.
환경
Ubuntu Server 18.04.2 LTS
GNU Make 4.1
전체 흐름
이하의 장 세워서 진행해 갑니다.
또한 두 개의 항목으로 나눌 예정입니다. (언젠가 게시)
이 항목에서는 3장까지 다룹니다.
Ubuntu Server 18.04.2 LTS
GNU Make 4.1
전체 흐름
이하의 장 세워서 진행해 갑니다.
또한 두 개의 항목으로 나눌 예정입니다. (언젠가 게시)
이 항목에서는 3장까지 다룹니다.
make란?
작업을 자동화하는 도구입니다.
명령 (echo 라든지 gcc 라든지)을 자동화하는 프로그램을 짜넣은 makefile 를 작성하면, 여러가지 조작이 커멘드 하나로 폰 해 되어 버립니다.
기쁜 일
등등.
초절 쉽게 makefile
명령줄에 문자열을 표시하는 "echo"명령을 자동화합니다.
초절 간단합니다.
1. makefile 만들기
편집기에서 "makefile"이라는 파일을 만듭니다. 1
Atom의 경우 Ctrl + N → Ctrl + Shift + L로 makefile을 선택합니다.
2. 프로그램 작성
makefileall:
echo Hello world!
3. 실행
콘솔에서 'make' 명령을 치십시오.
makefile$ make
echo Hello World!
Hello World!
표시되었습니다.
상당히 쉽게 makefile
디렉토리 청소를 자동화해 봅니다.
이런 텍스트 파일이 있다고 하자.
폴더에는 rm.mk라는 makefile과 C 파일과 텍스트 파일이 두 개 있습니다.
여기를 make 명령으로
이런!
rm.mk와 같은 디렉토리의 텍스트 파일을 청소하는 것이 목표입니다.
1. makefile 만들기
텍스트 파일을 rm 하는 makefile 를 작성하기 때문에, 「rm.mk」라고 했습니다.
2. 프로그램 작성
rm.mkclean:; rm -f *.txt
여기에서 사용되는 "*"는 접미사를 제외한 대상의 이름을 지정하는 자동 변수입니다.
*.txt (은)는, 임의의 텍스트 파일을 대상으로 한다고 하는 의미가 됩니다.
접미사 : 문자열이나 데이터 열의 끝에 추가되며 어떤 의미를 나타내는 요소를 나타냅니다. ( IT 용어 사전 부터)
3. 실행
이번에는 makefile 이라는 파일 이름이 아니라 "rm.mk"로 했으므로 다음과 같이 실행합니다.
rm.mk$ make -f rm.mk
rm -f *.txt
make 명령의 -f 옵션에 의해, 그 후에 지정한 파일 (rm.mk)을 makefile 로서 취급할 수가 있습니다.
텍스트 파일만 모두 삭제되었습니다.
단순 작업을 자동화할 수 있다고 생각합니다.
사이고에게
다음 번에는 번거로운 C 파일 컴파일을 자동화합니다.
make 라고 해도, 되는 것은 앞으로군요.
참고문헌
all:
echo Hello world!
$ make
echo Hello World!
Hello World!
디렉토리 청소를 자동화해 봅니다.
이런 텍스트 파일이 있다고 하자.
폴더에는 rm.mk라는 makefile과 C 파일과 텍스트 파일이 두 개 있습니다.
여기를 make 명령으로
이런!
rm.mk와 같은 디렉토리의 텍스트 파일을 청소하는 것이 목표입니다.
1. makefile 만들기
텍스트 파일을 rm 하는 makefile 를 작성하기 때문에, 「rm.mk」라고 했습니다.
2. 프로그램 작성
rm.mk
clean:; rm -f *.txt
여기에서 사용되는 "*"는 접미사를 제외한 대상의 이름을 지정하는 자동 변수입니다.
*.txt (은)는, 임의의 텍스트 파일을 대상으로 한다고 하는 의미가 됩니다.
접미사 : 문자열이나 데이터 열의 끝에 추가되며 어떤 의미를 나타내는 요소를 나타냅니다. ( IT 용어 사전 부터)
3. 실행
이번에는 makefile 이라는 파일 이름이 아니라 "rm.mk"로 했으므로 다음과 같이 실행합니다.
rm.mk
$ make -f rm.mk
rm -f *.txt
make 명령의 -f 옵션에 의해, 그 후에 지정한 파일 (rm.mk)을 makefile 로서 취급할 수가 있습니다.
텍스트 파일만 모두 삭제되었습니다.
단순 작업을 자동화할 수 있다고 생각합니다.
사이고에게
다음 번에는 번거로운 C 파일 컴파일을 자동화합니다.
make 라고 해도, 되는 것은 앞으로군요.
참고문헌
makefile 또는 Makefile은 기본적으로 호출됩니다. 확장자가 ".mk"인 makefile 은 make -f ~~.mk 로 호출합니다. ↩
Reference
이 문제에 관하여(GNU Make 입문 1/2), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/puru_pue/items/3ba12d651aa7ab96dc4c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)