在KEIL realview MDK下为单一C文件生成.LIB文件

时间:2021-08-21 08:46:59

在KEIL realview MDK下为单一C文件生成.LIB文件

纠结了一天,竟然没有一个网页完整的说清楚的这个问题,莫非太简单了大家不屑于说?看大多数说的都是简单地将整个工程转换成.LIB,在Project->Options for Target->Output下,选择Create Library,就可以了。

在KEIL realview MDK下为单一C文件生成.LIB文件

 

不过这样生成的lib文件巨大,我现在编译的工程最后生成的lib有2.6MB。

 

后来还是从KEIL官网英文资料中找到灵感(http://www.keil.com/support/docs/2610.htm):

1、右键点击工程,假设为a,选Add Group,假设为b,再将想生成lib的文件加入b group,假设文件是cc.c,必须要有cc.h。

在KEIL realview MDK下为单一C文件生成.LIB文件

 

2、右键依次点击其他的group,按KEIL官网资料所说的,将Options for Group->Properties下的Include in Target Build前的对勾去掉,这样生成LIB时就不会被编译了

在KEIL realview MDK下为单一C文件生成.LIB文件在KEIL realview MDK下为单一C文件生成.LIB文件

 

3、Project->Options for Target->Output下,选择Create Library,改输出文件名为cc,点OK

在KEIL realview MDK下为单一C文件生成.LIB文件

 

4、编译,这样就能在工程文件夹下的OBJ找到生成的cc.lib了,我在里面只放了一个函数,大小为80K。

 

5、调用也要注意,将cc.lib拷贝到source文件夹下,将其添加到main group中,并删掉之前的cc.c,要使用cc.lib时,必须要保证c文件中include “cc.h”。当然在之前写cc.c中也要include “cc.h”,并且cc.h中声明了cc.c中的函数才行。最后要将刚才去掉对勾的部分都还原,编译,OK!

摘抄自:http://blog.csdn.net/gasbi/article/details/6761420