免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 778 | 回复: 0
打印 上一主题 下一主题

makefile教程 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-07-28 22:18 |只看该作者 |倒序浏览

makfile简单的使用
只有三个文件   main.c first.c common.h
first 最基本的
/***************/
main: main.o first.o
    gcc main.o fist.o -o main
main.o: main.c commond.h .....
    gcc -c main.c
first.o: first.c commond.h ...
    gcc -c first.c
clean:
    rm -f main main.o first.o
/*************************/
second    替换 大写
/*************************/
CC = gcc
OBJS = main.o first.o
main: $(OBJS)
    $(CC) $(OBJS) -o main
main.o: main.c 和它的头文件
    $(CC) -c main.c
first.o: first.c .....
    $(CC) -c first.c
clean:
    rm -f $(OBJS)
/***********************/
third 隐含规则
CC gcc
CXX g++
AR ar
CPP $(CC) -E
RM rm -f
$@ 一条规则中的目标名字
$< 依赖文件中的第一个
$^ 所有的依赖 很强的哈//不是很好用哈  容易出错
/*********************/
OBJS = main.o first.o
main: main.o ......
    $(CC) $(OBJS) -o $@
main.o: main.c .......
    $(CC) -c $<
first.o: first.c
    $(CC) -C $<
clean:
    $(RM) $(OBJS)
/**********************/
fourth 系统会自动完成.o文件的转换
/************************/
OBJS = main.o first.o
.PHONY:test
test: $(OBJS)
    $(CC) -Wall $^ -o $@ -lm//这里的-lm可以连接数学函数库   一些简单的其它的连接也可以这样实现
.PHONY: clean
clean:
    -$(RM) $(OBJS)
/**********************/
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/101852/showart_2011159.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP