makefile:多个目录下makefile 的写法

有文件main.ca.cb.ca.hb.h,我想把两个头文件放一个文件夹里,把几个.c文件放一个文件夹,然后在编写makefile文件,如何编写... 有文件 main.c a.c b.c a.h b.h ,我想把两个头文件放一个文件夹里,把几个.c文件放一个文件夹,然后在编写makefile文件,如何编写 展开
 我来答
cang_feng
2012-08-20 · TA获得超过296个赞
知道答主
回答量:157
采纳率:100%
帮助的人:206万
展开全部
1、假定.h文件在Header目录里,.c文件在Source目录里,这两个目录文件在Myapp中,Makefile也在Myapp中。

2、Makefile如下。

----------------------------------------------------------------------------------

all: myapp
myapp: main.o b.o c.o
gcc -o myapp main.o b.o c.o
main.o: ./Source/main.c ./Header/a.h
gcc -c ./Source/main.c -I./Header
b.o: ./Source/b.c ./Header/a.h ./Header/b.h
gcc -c ./Source/b.c -I./Header
c.o: ./Source/c.c ./Header/b.h ./Header/c.h
gcc -c ./Source/c.c -I./Header
clean:
rm -f *.o
------------------------------------------------------------

3、话说回来,这样做太麻烦。
追问
是的这样确实有点麻烦,我的意思是可以设计一个变量,可惜不会弄
追答
其实目录文件没必要按头文件和源文件来分,因为这样让Makefile很难写。
最好是将有依赖关系的头文件和源文件放在一个目录文件里,也就是按不同的project来分目录,就不会出现这种问题。
秒懂百科
2021-05-15 · TA获得超过5.9万个赞
知道大有可为答主
回答量:25.3万
采纳率:88%
帮助的人:1.2亿
展开全部

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式