我试图写一个make文件:
1)只需键入命令“ make”,即可将文件myftpserver.c和myftpclient.c转换为myftpserver.o和myftpclient.o。
2)我还添加了一个“清理”目标来清理目录(删除所有临时文件,目标文件和可执行文件)
3)使用gcc编译器。
我当前的版本无法正常工作:
CC=gcc
myftpserver: myftpserver.o
$(CC) -o myftpserver.o
myftpclient: myftpclient.o
$(CC) -o myftpclient.o
clean: ? // not sure what to put here
这是我第一次制作Makefile。我尝试了其他几种组合,但似乎都没有用。我究竟做错了什么?
Make具有针对基本C文件内置的规则,因此您无需告诉它如何构建myftpserver.o
或myftpclient.o
。此Makefile应该可以正常工作,并且正确包含.PHONY
了该文件,因此clean
在存在名为“ clean”的文件时不会禁用该规则
CC:=gcc
.PHONY: clean all
all: myftpserver myftpclient
myftpserver: myftpserver.o
myftpclient: myftpclient.o
clean:
rm -f *~ *.o myftpserver myftpclient
去测试:
$ make --dry-run
gcc -c -o myftpserver.o myftpserver.c
gcc myftpserver.o -o myftpserver
gcc -c -o myftpclient.o myftpclient.c
gcc myftpclient.o -o myftpclient
希望这可以帮助!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句