linux中.a文件指的是什么

這篇文章主要介紹了linux中.a文件指的是什么的相關知識,內(nèi)容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇linux中.a文件指的是什么文章都會有所收獲,下面我們一起來看看吧。

公司主營業(yè)務:成都網(wǎng)站設計、網(wǎng)站建設、移動網(wǎng)站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。成都創(chuàng)新互聯(lián)公司推出任縣免費做網(wǎng)站回饋大家。

在linux中,“.a”文件是靜態(tài)鏈接庫文件;靜態(tài)鏈接庫文件是指要調用的函數(shù)或者過程鏈接到可執(zhí)行文件中,成為可執(zhí)行文件的一部分,動態(tài)鏈接所調用的函數(shù)代碼并沒有被拷貝到應用程序的可執(zhí)行文件中去,而是在其中加入了所調用函數(shù)的描述信息。

本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。

linux中.a是什么文件

.a文件,是LINUX系統(tǒng)中的靜態(tài)鏈接庫文件。

所謂靜態(tài)鏈接是指把要調用的函數(shù)或者過程鏈接到可執(zhí)行文件中,成為可執(zhí)行文件的一部分。當多個程序都調用相同函數(shù)時,內(nèi)存中就會存在這個函數(shù)的多個拷貝,這樣就浪費了寶貴的內(nèi)存資源。.so文件是共享庫文件(動態(tài)鏈接)。動態(tài)鏈接所調用的函數(shù)代碼并沒有被拷貝到應用程序的可執(zhí)行文件中去,而是僅僅在其中加入了所調用函數(shù)的描述信息(往往是一些重定位信息),僅當應用程序被裝入內(nèi)存開始運行時,在操作系統(tǒng)的管理下,才在應用程序與相應的.so之間建立鏈接關系。

.a文件是多個.o文件的組合。.o文件就是對象文件,里面包含的內(nèi)容就是01這樣的機器可執(zhí)行的指令,當程序要執(zhí)行時還需要進行鏈接(link).鏈接就是把多個.o文件鏈成一個可執(zhí)行文件。

擴展知識

.o 就是object, 也就相當于windows下編譯的obj文件, 俗稱目標文件.

.a 就是archive, 也就相當于windows的VC下編譯的lib文件, 俗稱靜態(tài)庫文件.

.o文件是鏈接文件,.a是靜態(tài)庫文件,靠.o文件生成,作為一個庫為外部程序提供函數(shù),接口。

生成.o文件:

gcc -c test.o test.c

生成.a文件:

ar cqs test.a test.o

.o 就相當于windows里的obj文件 ,一個.c或.cpp文件對應一個.o文件

.a 是好多個.o合在一起,用于靜態(tài)連接 ,即STATIC mode,多個.a可以鏈接生成一個exe的可執(zhí)行文件

.so 是shared object,用于動態(tài)連接的,和windows的dll差不多,使用時才載入

關于“l(fā)inux中.a文件指的是什么”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“l(fā)inux中.a文件指的是什么”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

本文題目:linux中.a文件指的是什么
當前地址:http://muchs.cn/article18/pdpsgp.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、微信公眾號、App設計、云服務器做網(wǎng)站、品牌網(wǎng)站建設

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務器托管