免费注册 查看新帖 |

Chinaunix

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

为什么修改.h文件后工程不会自动编译 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-01-07 16:18 |只看该作者 |倒序浏览
在一个工程中有test.h和test.c,当改了test.c后运行make时,工程会自动更新,
而更改了test.h后运行make,工程不会自动更新?

论坛徽章:
0
2 [报告]
发表于 2009-01-07 16:20 |只看该作者
我用的这个Makefile不会。。。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
3 [报告]
发表于 2009-01-07 16:21 |只看该作者
makefile写的不对。

论坛徽章:
0
4 [报告]
发表于 2009-01-07 16:33 |只看该作者
在你的目标(比如test.o)里加入test.h作为你的依赖文件之一

论坛徽章:
0
5 [报告]
发表于 2009-01-07 16:36 |只看该作者
原帖由 lenovo 于 2009-1-7 16:21 发表
makefile写的不对。


那应该怎么写呀。。。多谢了。。。

论坛徽章:
0
6 [报告]
发表于 2009-01-07 16:37 |只看该作者
原帖由 5毛党党员 于 2009-1-7 16:20 发表
我用的这个Makefile不会。。。


可以把你的Makefile发给我看看吗?
lzay.fox.wu#gmail.com
多谢了。。。

论坛徽章:
0
7 [报告]
发表于 2009-01-07 16:38 |只看该作者
原帖由 wooin 于 2009-1-7 16:37 发表


可以把你的Makefile发给我看看吗?
lzay.fox.wu#gmail.com
多谢了。。。

我的意思是我的改变.h也不会自动更新

论坛徽章:
0
8 [报告]
发表于 2009-01-07 17:01 |只看该作者
我这里测试的可以啊
把test.h里的值换成一个新的,重新make运行,新值生效的
楼主到底有没有在目标里加入test.h啊
test.c

  1. #include "test.h"

  2. int main(void)
  3. {
  4.         printf("a = %d\n", a);
  5. }
复制代码




test.h
  1. int a = 10;
复制代码





makefile
  1. all : test.c test.h
  2.                 gcc -o a.out test.
复制代码

[ 本帖最后由 zhuhefang2006 于 2009-1-7 17:04 编辑 ]

论坛徽章:
0
9 [报告]
发表于 2009-01-07 17:05 |只看该作者
先clean下吧

论坛徽章:
0
10 [报告]
发表于 2009-01-07 17:08 |只看该作者
默认test.o只以来test.c,你指定一下

  1. all         : test.o
  2.         gcc -o a.out test.o
  3. test.o        : test.c test.h
  4.         gcc -c test.c
  5. clean        :
  6.         rm -f a.out test.o
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP