GNU make가 자동으로 찾길 원한다면 확장자는 전혀 없으며 Makefile이라고 부릅니다.
Make에는 자동 변수가있어 C/C++ 파일에서 많은 빌드 프로세스를 제어 할 수 있습니다. 이러한 변수에는 CC
, CPP
, CFLAGS
, CPPFLAGS
, CXX
, CXXFLAGS
및 LDFLAGS
이 포함됩니다. 이들은 C/C++ 전처리 기, 컴파일러, 플랫폼 객체 및 프로그램 링커 ("프로그램 실행 파일"또는 "컴파일중인 프로그램"인 plainspeak를 생성하는 프로그램)에 대한 스위치를 제어합니다.
GNU make에는 C/C++ 소스 코드에서 프로그램을 빌드 할 수 있도록 조정 된 많은 암시 적 규칙이 포함되어 있으므로 처음부터 다시 작성할 필요가 없습니다. 예를 들어
, 심지어 없이 메이크, 당신은 make foobar
을 시도하는 경우, GNU는이 중 하나를 발견하면 적절한 컴파일러를 호출하여, 첫째 foobar.c
또는 foobar.cpp
에서 foobar.o
를 구축하려고 시도를 확인하고 조립하여 foobar
을 구축하려고 시도합니다 (링크 포함) foobar.o
. 즉, GNU Make는 암시 적 규칙 덕분에 메이크 파일이 없어도 foobar
프로그램을 빌드하는 방법을 알고 있습니다. -p
스위치와 함께 Make를 호출하여 이러한 규칙을 볼 수 있습니다. make -p
.
GNU에 의존하고 싶은 사람들 암시 적 규칙 데이터베이스는 자신의 프로젝트에만 한정된 간결하고 짧은 makefile을 사용하도록하고, 어떤 사람은 전체 암시 적 규칙 데이터베이스를 비활성화 할 수 있습니다 (-r
스위치 사용).) 처음부터 모든 것을 지정하여 제작 과정을 완전히 제어 할 수 있습니다. 두 전략의 타당성에 대해서는 언급하지 않겠지 만, 둘 다 어느 정도는 일을해야한다는 것을 확신합니다.
출처
2010-06-22 11:53:14
amn