C++学习----make

基本规则:

touch main.c add.c sub.c add.h sub.h #新建以上文件

main函数:

int main(void)
{
    return 0;
}

Makefile文件:

main:main.o add.o sub.o
    gcc -Wall -g main.o add.o sub.o -o main
main.o:main.c
    gcc -Wall -g -c main.c -o main.o
add.o:add.c add.h
    gcc -Wall -g -c add.c -o add.o
sub.o:sub.c sub.h
    gcc -Wall -g 0c sub.c -o sub.o

.PHONY:clean
OBJECTS=main.o add.o sub.o
main:$(OBJECTS)
    gcc -Wall -g $^ -o $@
main.o:main.c
    gcc -Wall -g -c $< -o $@
add.o:add.c add.h
    gcc -Wall -g -c $< -o $@
sub.o:sub.c sub.h
    gcc -Wall -g 0c $< -o $@

 编译多个文件:

 

编译cpp文件

如上图所示的结构。makefile文件如下图所示

也可修改成:

.PHONY:clean
CC=g++
CPPFLAGS=-Wall -g
BIN=main
OBJS=main.o add.o sub.o

$(BIN):$(OBJS)
	$(CC) $(CPPFLAGS) $^ -o $@
%.o:%.cpp
	$(CC) $(CPPFLAGS) -c $< -o $@
clean:
	rm -f *.o $(BIN)

 

posted @   俞莲舟  阅读(24)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示