免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: net_robber
打印 上一主题 下一主题

【30日更新】Makefile(用于多目录 源代码 编译)-56楼提供最新版本下载 [复制链接]

论坛徽章:
0
36 [报告]
发表于 2007-03-19 14:35 |只看该作者
不可以

那个是检查依赖用的

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
35 [报告]
发表于 2007-03-19 14:14 |只看该作者

  1. $(OBJ_DIR)%.o:$(SRC_DIR)%.c $(OBJ_DIR)%.d
  2.         $(CC) $(FLAG_COMPLE) $< -o $@
  3. $(OBJ_DIR)%.d:$(SRC_DIR)%.c
  4.         $(CC) $< -MM -o $@
复制代码

上边 %.d这个依赖是不是有点儿多余啊.


  1. $(OBJ_DIR)%.o:$(SRC_DIR)%.c
  2.            $(CC) $(FLAG_COMPLE) $< -o $@
复制代码

这样不就够了吗.

论坛徽章:
0
34 [报告]
发表于 2007-03-16 16:26 |只看该作者
Makefile、.h文件、.c文件、.o文件等等,有时候还有很多其他文件,都放在一个目录下,看着不乱么???

分目录管理一下,归归类,就比较舒服了


然后,各种文件不在同一目录下,

编译连接就需要手动指定路径。

我这个是希望使用通配符的方法,方便Makefile编写

这样可以体现Makefile的优势,

不然还不如用SHELL

论坛徽章:
0
33 [报告]
发表于 2007-03-16 15:55 |只看该作者
"多目录 源代码 编译"这个名字似乎和你写的makefile做的不是一件事情吧
在大的项目中源代码肯定是多目录的,通常需要每个目录下写一个makefile,然后在上级目录的makefile中运行下一级目录的make,按照顺序完成每个子目录的编译
这样,只需要一个make,就能完成整个项目的编译,很多开源的项目都是这样的,楼主找个开源的项目代码看看他们的makefile
这是openldap的makefile的一部分,应该能说明点问题:

all-common: FORCE
        @echo "Making all in `$(PWD)`"
        @for i in $(SUBDIRS) $(ALLDIRS); do             \
                echo "  Entering subdirectory $$i";             \
                ( cd $$i; $(MAKE) $(MFLAGS) all );              \
                if test $$? != 0 ; then exit 1; fi ;    \
                echo " ";                                                               \
        done

论坛徽章:
0
32 [报告]
发表于 2007-03-16 11:40 |只看该作者

回复 1楼 net_robber 的帖子

CODE:
[Copy to clipboard]
不要完全否定中国的教育制度!
它在扼杀一部分天才的同时,减少了更多废物的出现。
至少,每一个人都有学到了一些可用的知识。

yanweihao 说粗话被严重警告+禁言。
--by converse

[ 本帖最后由 converse 于 2007-3-22 23:11 编辑 ]

论坛徽章:
0
31 [报告]
发表于 2007-03-15 22:49 |只看该作者
原帖由 exir 于 2007-3-15 22:47 发表
...
还有就是带空格的文件名和路径用""括起了就行了。
...

记下了,呵呵

论坛徽章:
0
30 [报告]
发表于 2007-03-15 22:47 |只看该作者
auto工具对于交叉编译好像没什么用
还有就是带空格的文件名和路径用""括起了就行了。
曾在win下用win版gcc做arm平台交叉编译,program file这个目录带个空格,真是烦死了。
这么重要的目录用这么挫的一个名字,既带空格又不简洁。
还是*nix好。

论坛徽章:
0
29 [报告]
发表于 2007-03-15 16:55 |只看该作者
没有用过,在linux都用简单文件编译方式,没有楼主强,没有用到跨目录的,
还是顶一下,支持楼主!

论坛徽章:
0
28 [报告]
发表于 2007-03-15 16:05 |只看该作者
一定要学的,呵呵。

一个一个的来么

学以致玩。

大家玩的高兴。呵呵!

论坛徽章:
0
27 [报告]
发表于 2007-03-15 16:03 |只看该作者
不错的东西
  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP