关闭

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

1115人阅读 评论(0) 收藏 举报

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

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

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

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:278334次
    • 积分:5162
    • 等级:
    • 排名:第5527名
    • 原创:235篇
    • 转载:14篇
    • 译文:0篇
    • 评论:37条
    最新评论