cc 通常指的是编译器,你可以在makefile里查找cc所指代的具体编译器.貌似你所用的编译器为xlc-g -bnoquiet -brtl -bexpall -o 这些指的是编译器的参数,具体的编译器有具体的解释基本相似,但有所不同以GCC编译器为例,参数的意思分别为:-o 制定目标名称,缺省的时候,gcc 编译出来的文件是a.out,很难听,如果...
GNU的make很强大,它可以自动推导文件以及文件依赖关系后面的命令,只要make看到一个[.o]文件,它就会自动的把[.c]文件加在依赖关系中,如果make找到一个whatever.o,那么whatever.c,就会是whatever.o的依赖文件。并且 cc -c whatever.c 也会被推导出来,于是,我们的makefile再也不用写得这么复杂。 1objects = main...
#Makefile:CC:=gccCFLAGS:=-gsrc:=$(wildcard *.c)test3.cobj:=$(patsubst %.c,%.o,$(src)...
只编译产生 .o 文件,而不链接。cc 是 编译器的 名字。
cc 通常指的是编译器,你可以在makefile里查找cc所指代的具体编译器。貌似你所用的编译器为xlc -g -bnoquiet -brtl -bexpall -o 这些指的是编译器的参数,具体的编译器有具体的解释基本相似,但有所不同 以GCC编译器为例,参数的意思分别为:-o 制定目标名称,缺省的时候,gcc 编译出来的文件是...
rm -f $(shell find -name "*.o") rm -f $(TARGET) 1. 2. 3. 如果当前目录下恰好有名为“clean”的文件,那么执行“make clean”时它就不会执行那些删除命令。 这时我们需要把“clean”这个目标,设置为“假想目标”,这样可以确保执行“make clean”时那些删除命令肯定可以得到执行。
你修改了一个规则,即:将目标文件链接成为可执行程序时指定了make的编译器的值为gcc〔gcc –o main ...〕,所以你调用make的时候,看到的是gcc。 当将源文件编译成为目标文件时,你并没有修改make的内建规则(默认编译器的值为cc),因此调用make的时候,输出的是cc。
是通配符,%.cc表示工程里的.cc文件 比如 .o: %.cc (CC) -c -o $@ $< 就是把所有.cc文件都编译成对应obj
-g -bnoquiet -brtl -bexpall -o 这些指的是编译器的参数,具体的编译器有具体的解释基本相似,但有所不同以GCC编译器为例,参数的意思分别为:-o 制定目标名称,缺省的时候,gcc 编译出来的文件是a.out,很难听,如果 你和我有同感,改掉它,哈哈 例子用法 gcc -o hello.exe hello.c (哦,windows用...
insert.o search.o files.o utils.o cc -o edit main.o kbd.o command.o display.o insert.o search.o files.o utils.o main.o : main.c defs.h cc -c main.c kbd.o : kbd.c defs.h command.h cc -c kbd.c command.o : command.c defs.h command.h ...