原文章 http://blog.csdn.net/gasbi/article/details/6761420
查了一個下午,竟然沒有一個網頁完整的說清楚的這個問題,莫非太簡單了大家不屑於說?看大多數說的都是簡單地將整個工程轉換成.LIB,在Project->Options for Target->Output下,選擇Create Library,就可以了。
不過這樣產生的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。
2、右鍵依次點擊其他的group,按KEIL官網資料所說的,將Options for Group->Properties下的Include in Target Build前的對勾去掉,這樣產生LIB時就不會被編譯了
3、Project->Options for Target->Output下,選擇Create Library,改輸出檔案名為cc,點OK
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!
參考網址:
Keil C 裡面Lib庫檔案的產生與調用
http://blog.ednchina.com/alexi2008/224810/message.aspx
µVISION: CREATE LIBRARY AND APPLICATION IN ONE PROJECT
http://www.keil.com/support/docs/2610.htm
Keil的lib產生個人總結
http://blog.21ic.com/user1/3742/archives/2010/70337.html
Keil的lib庫函數的封裝
http://blog.csdn.net/CaesarZou/article/details/5533934
Keil中如何使用自己產生的LIB庫
http://blog.csdn.net/wgq2633/article/details/2897752
Keil 產生Lib 調用Lib
http://dufanfance.blog.163.com/blog/static/144959439201151414974/