Makefile && shell
네트워크
수집 하고 스스로 정 리 했 습 니 다. 예전 에는 익숙 하지 않 았 는데 지금 은 사용 할 수 있 는 것들 만 정 리 했 습 니 다.
1: Makefile 중
변량
정 의 된 방식:
1. 재 귀 전개 방식, 재 귀 전개 방식 이 정의 하 는 변 수 는 이 변 수 를 참조 할 때 교 체 됩 니 다. 즉, 이 변수 가 다른 변 수 를 포함 하고 있다 면.
활용 단어 참조
이 변 수 를 인용 할 때 한꺼번에 내 장 된 변 수 를 모두 펼 칩 니 다. 이러한 유형의 변 수 는 잘 완성 되 지만
사용자
변수 뒤에 내용 을 추가 할 수 없 는 심각 한 단점 도 있 습 니 다. (문장: CFLAGS = $(CFLAGS) - O 는 변수 확장 과정 에서 무한 순환 을 초래 할 수 있 기 때 문 입 니 다.)
2. 간단 한 방식.정의상기 문 제 를 피하 기 위해 간단 한 확장 형 변수의 값 은 정의 에서 펼 쳐 지고 한 번 만 펼 쳐 지기 때문에 다른 변수 에 대한 인용 을 포함 하지 않 고 변수의 내장 인용 을 제거 합 니 다.
3. 사용? =변 수 를 정의 합 니 다. 변 수 를 정의 하지 않 으 면 사용자 가 정의 하지 않 으 면 기본 값 을 제공 한 다 는 뜻 입 니 다.
예 를 들 어 재 귀적 전개 와 간단 한 방식 정의 의 차 이 를 설명 한다.
CFLAGS:=-Wall
CFLAGS:=$(CFLAGS)
all:
echo $(CFLAGS)
Makefile, make echo -Wall
CFLAGS=-Wall
CFLAGS=$(CFLAGS)
all:
echo $(CFLAGS)
make echo :Makefile:2:***Recursive variable `CFLAGS
GNU make 의 주요 미리 정 의 된 변수: 미리 정 의 된 변수 의미 $* 확장자 가 없 는 대상 파일 이름 입 니 다. $+ 모든 의존 파일 은 빈 칸 으로 나 뉘 어 있 으 며, 나타 난 선후 순 으로 중복 되 는 의존 파일 을 포함 할 수 있 습 니 다. $< 첫 번 째 의존 파일 의 이름 입 니 다. $? 모든 의존 파일 은 빈 칸 으로 나 뉘 어 있 습 니 다. 이 의존 파일 의 수정 날 짜 는 대상 의 생 성 날짜 보다 늦 습 니 다. $@ 대상 의 전체 이름 입 니 다. $^ 모든 의존 파일 은 빈 칸 으로 나 뉘 어 중복 되 는 의존 파일 을 포함 하지 않 습 니 다. $% 만약 목표 가 압축 파일 구성원 이 라면 이 변 수 는 목표 의 압축 파일 구성원 이름 을 표시 합 니 다.예 를 들 어 대상 이름 이 my target. so (image. o) 를 위해 서 는 $@ 은 my target. so 이 고 $% 는 image. o 입 니 다.AR 압축 파일 유지보수 프로그램의 이름 입 니 다. 기본 값 은 AR 입 니 다.ARFLAGS 압축 파일 유지보수 프로그램의 옵션 입 니 다.AS 어 셈 블 리 프로그램의 이름, 기본 값 은 as 입 니 다.ASFLAGS 어 셈 블 리 프로그램의 옵션.CC C 컴 파 일 러 의 이름, 기본 값 은 cc 입 니 다.CCFLAGS C 컴 파 일 러 의 옵션 입 니 다.CPP C. 프 리 컴 파일 러 의 이름, 기본 값 은 $(CC) - E 입 니 다.CPPFLAGS C. 미리 컴 파일 된 옵션 입 니 다.CXX C++ 컴 파 일 러 의 이름 입 니 다. 기본 값 은 g++ 입 니 다.CXXFLAGS C++ 컴 파 일 러 의 옵션 입 니 다.FC FORTRAN 컴 파 일 러 의 이름 으로 기본 값 은 f77 입 니 다.FFLAGS FORTRAN 컴 파일 러 의 옵션 입 니 다.참고:http://www.aka.org.cn/Lectures/001/Lecture-1/make.html
http://hi.chinaunix.net/?uid-14782631-action-viewspace-itemid-10165
http://www.sudu.cn/info/html/edu/20080407/264139.html
http://blog.csdn.net/lijierson8/article/details/6283040
http://www.worldhello.net/doc/makefile_howto/makefile_howto.mm.htm
전형 적 인 셸 튜 토리 얼: - Ken O. Brutch 의 번역
Bash 를 사용 하여 Linux Shell 스 크 립 트 - 6. 표현 식 작성http://blog.csdn.net/fox_lht/article/details/5894940
진호 칼럼:
http://blog.csdn.net/haoel
http://coolshell.cn/
전형 적 인 Makefile 튜 토리 얼: 저 와 함께 Makefile 을 쓰 겠 습 니 다.
http://blog.csdn.net/haoel/article/details/2886(http://www.chinaunix.net/jh/23/408225.html)
+
http://wenku.baidu.com/view/4a171e6a25c52cc58bd6be6b.html
GCC 상용 컴 파일 옵션: 최적화 옵션 기능
http://blog.csdn.net/iterzebra/article/details/6203067
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.