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

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

《九》makefile中大型項(xiàng)目案例

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

為了實(shí)現(xiàn)一個大型的項(xiàng)目,

通常工程里面會有很多的目錄.

每個目錄有不同的作用.


makefile也是一種代碼,

至于怎樣實(shí)現(xiàn)makefile對大型工程的管理,有很多思路:


大型makefile思路1:

本次用于編寫一個通用的多目錄下的makefile.

一般會有一個頂層makefile和通用的makefile.build.

然后每個.c文件夾里,會有子目錄makefile.

最后,在頂層makefile中編寫一個shell遍歷程序.

遍歷每個子目錄,并進(jìn)入目錄運(yùn)行make命令.

因?yàn)楦鱾€makefile在執(zhí)行指令的時候,都用目錄,所以不用擔(dān)心找不到的問題.


大型makefile思路2:

可以參考linux的內(nèi)核,逐層生成一個打包文件.

采用遍歷,

最終生成一個總的打包文件.

然后,通過總的打包文件,生成可執(zhí)行文件


大型makefile思路3:

可以各層目錄下,生成.o文件.

然后把各層的.o文件拷貝到頂層目錄.

通過頂層目錄,把所有的.o文件進(jìn)行鏈接,生成最終的可執(zhí)行文件.




例如:

項(xiàng)目

? ? |---build文件夾

? ? |? ? |---exes文件夾

? ? |? ??? ? |---huge.exe

? ? |? ? |---libs文件夾

? ? |? ? |---makefile

? ? |? ? |---make.rule

? ? |

? ? |---source文件夾

? ? ? ? |---lib_hello文件夾

? ? ? ? |? ? |---inc文件夾

? ? ? ? |? ? |? ? |---helloworld.h

? ? ? ? |? ? |---src文件夾

? ? ? ? |? ? ? ? ?|---helloworld.c

? ? ? ? |? ? ? ? ?|---makefile

? ? ? ? |---main_hello文件夾

? ? ? ? ? ? ? |---src文件夾

? ? ? ? ? ? ? ??? ? |---deps文件夾

? ? ? ? ? ? ? ??? ? |? ? |---main.dep

? ? ? ? ? ? ? ??? ? |---objs文件夾

? ? ? ? ? ? ? ??? ? |? ? |---main.o

? ? ? ? ? ? ? ??? ? |---main.c

? ? ? ? ? ? ? ??? ? |---makefile



舉例:


用思路1和思路2的方式實(shí)現(xiàn)的helloworld多目錄的應(yīng)用。

這個例子完全可以應(yīng)用在其他大型項(xiàng)目中.

例子鏈接:

鏈接:https://pan.baidu.com/s/13yVmF5TvKB0M5njj8LkWYA
提取碼:1234

鏈接:https://pan.baidu.com/s/14D79UFrJ9wLWTEpWu1sgpw
提取碼:1234

《九》makefile中大型項(xiàng)目案例的評論 (共 條)

分享到微博請遵守國家法律
休宁县| 新乐市| 河池市| 峡江县| 泸水县| 彰化县| 九龙城区| 临夏市| 德令哈市| 清流县| 阜新市| 江城| 溧水县| 阜新市| 宁德市| 温泉县| 吉首市| 孟连| 辉南县| 丽江市| 铁岭县| 东安县| 滦南县| 鄂州市| 江陵县| 保山市| 邢台县| 六盘水市| 新巴尔虎左旗| 利津县| 尼木县| 巴彦县| 息烽县| 无为县| 滦平县| 济宁市| 赞皇县| 平湖市| 册亨县| 博乐市| 崇明县|