最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

《七》makefile靜態(tài)庫的生成和使用

2023-03-26 11:05 作者:GXTon_阿通  | 我要投稿

工程結(jié)構(gòu)

其中include里面有helloworld.h文件

這里為了演示靜態(tài)庫,

工程很簡單,就是主函數(shù)調(diào)用helloworld的庫,輸出一句 "hello world" .

通常情況下庫的都包含兩部分,一部分是通過.c文件編譯生成的庫,另一部分是庫對應(yīng)的.h文件.

這個.h文件就是庫的對外接口,里面有庫的函數(shù),通過調(diào)用庫的.h里面的函數(shù),就能夠?qū)崿F(xiàn)庫的所有功能.

main.c文件

helloworld.c文件

helloworld.h文件:

makefile文件(只有一個頂層makefile)

上面的makefile中

生成靜態(tài)庫的語法:ar -r library_a.a helloworld.o???

還有一個問題.gcc 調(diào)用過程中,用到了CFLAGS變量.

如果沒有CFLAGS變量,就會導(dǎo)致:

main.o 目標(biāo)文件被正確的生成,但在連接時找不到my_printf() 函數(shù)。由于 my_printf()函數(shù)的實現(xiàn)是放在 helloworld.a 庫中的,而我們又沒有告訴編譯器,在連接時應(yīng)當(dāng)?shù)?helloworld.a中找所需的函數(shù)。所以需要用到 gcc的-l(小寫的 L)和-L 選項.


運(yùn)行:


《七》makefile靜態(tài)庫的生成和使用的評論 (共 條)

分享到微博請遵守國家法律
靖西县| 孝昌县| 乌什县| 仲巴县| 随州市| 灵山县| 元阳县| 营山县| 中宁县| 花莲县| 西昌市| 太和县| 吴旗县| 准格尔旗| 手游| 康平县| 定西市| 济宁市| 玛多县| 淄博市| 普兰店市| 兴仁县| 松潘县| 乃东县| 全椒县| 勃利县| 浦北县| 微山县| 安西县| 汝阳县| 巴林左旗| 洛浦县| 昌黎县| 沙坪坝区| 石屏县| 巍山| 措勤县| 杭锦后旗| 科尔| 北京市| 永泰县|