飞光流影

主站:http://blog.sina.com.cn/orchidmirror

使用AR工具管理库文件需要注意的问题

一些工程的Makefile文件常采用递归形式增量产生.a库文件,如:
vxworks5.4中makek采用的是对src中每个叶目录分别编译,然后加入
库中,语句为$(TGT_DIR)/lib/$(LIBNAME): $(LIBOBJS)
                        AR crus .......

这样有两个问题:
1、很多平台下采用AR工具增量方式生成库文件效率低下,还不如在编译完成后,
      每次都重新生成一遍库文件;
2、由于Linux等系统中文件的时间敏感度是比较小的,如果采用递归加入库中的办
    法, cc命令可能很快运行完毕,导致前面刚刚更新过的库文件和现在编译出的.o
   文件时间一样,这样就会导致部分.o文件没有加入库中,后面链接时就会找不到
   相应的函数。

所以,目前在Makefile工程中绝对不应该使用递归增量的方式生成库文件。

阅读更多
个人分类: xNix开发
下一篇Ecplise内JDT自带Java编译器
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭