标题:会写makefile的进!
只看楼主
枯藤天涯
Rank: 1
等 级:新手上路
帖 子:99
专家分:0
注 册:2007-4-25
结帖率:100%
 问题点数:0 回复次数:16 
会写makefile的进!
我写了个游戏
用的函数比较多
想学写写makefile加快编译速度
一个大程序中使用了好多函数,怎么合理的调试也是一个问题
有这方面经验的介绍下

在TC2.0下可不以可以使用makefile呢?
还有建立工程文件,应该怎么做?
最好给些例子!
搜索更多相关主题的帖子: makefile 
2008-03-14 16:23
VxWorks
Rank: 3Rank: 3
来 自:WindRiver
等 级:论坛游民
威 望:6
帖 子:859
专家分:68
注 册:2007-11-24
得分:0 
成熟的IDE通常都会提供自己的make程序,TC提供的叫MAKE.EXE
makefile文件写法都差不多,你会写linux下的也能大致看懂vc的和tc的
因为他们都是源自于UNIX中的make的
这本书提了一点常见编译器makefile的写法:
http://www.

make工具本身不是和开发环境绑定的,你可以安装mingw32,用它的make给你的tc干活,这样就可以使用gnu的一套开发工具了,gnu make的资料很容易找

为了防止世界被破坏,为了守护世界的和平,贯彻爱与真实的邪恶,可爱又迷人的反派角色,VxWorks!
Don't ask me any question.I'm just here to buy soy sauce.
2008-03-14 20:41
VxWorks
Rank: 3Rank: 3
来 自:WindRiver
等 级:论坛游民
威 望:6
帖 子:859
专家分:68
注 册:2007-11-24
得分:0 
补充一下,你还可以写个批处理实现工程的自动编译,虽然没有makefile那么强,当也可以实现工程的编译
dos下强大的调试器不多,和现在的比都比较原始,softice早期版本是dos下的,不过现在可能不容易找了,现在多是适应NT内核的调试器

为了防止世界被破坏,为了守护世界的和平,贯彻爱与真实的邪恶,可爱又迷人的反派角色,VxWorks!
Don't ask me any question.I'm just here to buy soy sauce.
2008-03-14 20:45
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
得分:0 
批处理不适合适时操作..错了也只能等它运行完...我现在真天看批处理文件..苦啊...

学习需要安静。。海盗要重新来过。。
2008-03-14 20:48
VxWorks
Rank: 3Rank: 3
来 自:WindRiver
等 级:论坛游民
威 望:6
帖 子:859
专家分:68
注 册:2007-11-24
得分:0 
不会写,不会调试不是批处理的错

当需要敲一大堆命令时,批处理和脚本是最好的工具

为了防止世界被破坏,为了守护世界的和平,贯彻爱与真实的邪恶,可爱又迷人的反派角色,VxWorks!
Don't ask me any question.I'm just here to buy soy sauce.
2008-03-14 20:51
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
得分:0 
是啊..同意你的观点....对于能保证正确的前提下是个很不错的工具..

学习需要安静。。海盗要重新来过。。
2008-03-14 20:59
iFreeBSD
Rank: 4
等 级:业余侠客
威 望:4
帖 子:474
专家分:236
注 册:2007-11-5
得分:0 
当需要敲一大堆命令时,批处理和脚本是最好的工具

身有体会

without further ado, let’s get started
2008-03-14 21:04
VxWorks
Rank: 3Rank: 3
来 自:WindRiver
等 级:论坛游民
威 望:6
帖 子:859
专家分:68
注 册:2007-11-24
得分:0 
楼上的图像怎么这么恶心啊?

bsd可以看成正统unix的兄弟,linux算是侄子,怎么说都是一家人吧
本是同根生,相煎何太急

为了防止世界被破坏,为了守护世界的和平,贯彻爱与真实的邪恶,可爱又迷人的反派角色,VxWorks!
Don't ask me any question.I'm just here to buy soy sauce.
2008-03-14 21:27
josen0205
Rank: 2
来 自:江苏
等 级:论坛游民
帖 子:307
专家分:52
注 册:2007-5-8
得分:0 
makefile很好写的,我们做项目的时候一般都是写makefile。
下面给你一个简单的例子,不过我是在unix上编译的,我写的是.ec文件例如itest.ec,所以这里我用esql编译,如果你的.c程序用cc编译
/**************makefile******************/
.SUFFIXES:  .c .o .ec .o
.ec.o:
    esql -c $*.ec
    -rm $*.c
.c.o:
    cc -c $*.c
OBJ=itest.o
itest:  $(OBJ)
    esql -o $@ $(OBJ)
    mv -f $@ ${HOME}/bin
clean:
    rm -f *.o
/******************************************/
.ec.o:
    esql -c $*.ec
    -rm $*.c
.c.o:
    cc -c $*.c
这两个是编译规则,*.ec用esql编译,*.c用cc编译
OBJ=itest.o
itest:  $(OBJ)
    esql -o $@ $(OBJ)
    mv -f $@ ${HOME}/bin
编译OBJ并把执行码移到bin目录下面
如果你的OBJ包含多个文件可以写成:
OBJ=itest.o itest1.o itest2.o
上面只是一个很简单的例子,好多时候再编译时候还要包含好多库的,你在编译OBJ时把相应的库加进去就可以了。当然我们也可以编译成一个静态库或者动态库。

只有想不到,没有做不到
2008-03-15 00:07
枯藤天涯
Rank: 1
等 级:新手上路
帖 子:99
专家分:0
注 册:2007-4-25
得分:0 
多谢大家!

2008-03-15 00:30



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-203403-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.145893 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved