"makefile", "readme" 및 C++ 소스 프로그램(.cpp 파일)을 사용하는 작업을 실행하려고 합니다. 모두 압축된 tar 파일에 있어야 합니다. 내 메이크파일에도 정리 및 백업 규칙이 있어야 한다는 말을 들었는데 나머지를 올바르게 수행하는 방법을 모르겠습니다.
과제를 제출하려고 했으나 "귀하의 메이크파일에는 이 프로그램을 컴파일하기 위한 기본 규칙이 없습니다."라는 말을 들었습니다.
이것은 내 빌드 파일입니다.
# makefile to build a program
clean:
/bin/rm -f myname *.o
backup:
tar czf cm25.assignment4_1.tar.gz readme Makefile
분명히 뭔가 빠진 것이 있지만 여기에는오래된다음에서 파일 생성오래된참고자료로 사용할 수 있지만 무엇을 포함해야 하는지, 무엇을 포함하지 않아도 되는지 잘 모르는 과제:
# makefile to build a program
# program depends on components: name and main
myname: main.o name.o
g++ -g main.o name.o -o myname
# name.cpp has it's own header file
name.o: name.cpp name.h
g++ -c -g name.cpp
# main.cpp also uses the header file name.h
main.o: main.cpp name.h
g++ -c -g main.cpp
clean:
/bin/rm -f myname *.o
backup:
tar czf cm25.assignment4_1.tar.gz *.cpp readme Makefile
내 모든 압축된 tar 파일에는 .cpp 파일, readme 및 makefile만 있고 헤더 등은 없습니다.
답변1
과제를 제출하려고 했으나 "귀하의 메이크파일에는 이 프로그램을 컴파일하기 위한 기본 규칙이 없습니다."라는 말을 들었습니다.
글쎄, 누가 옳다고 말했든: 두 가지 규칙만 있습니다. 하나는 빌드 제품을 삭제하고 다른 하나는 프로젝트의 일부를 보관하는 것입니다(실제 소스 코드는 포함하지 않음).
Makefile의 시작 부분에 추가하십시오.
all: myprogram
마침내:
myprogram: myprogram.cpp
(TAB)gcc -Os -Werror -Wall -Wextra -o myprogram myprogram.cpp