久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      linux中l(wèi)a是什么文件

      在linux中,la是使用libtool編譯出的庫(kù)文件,是記錄同名動(dòng)態(tài)庫(kù)和靜態(tài)庫(kù)相關(guān)信息的文本文件;該文件是通過(guò)libtool保存在平臺(tái)之間的唯一文件。libtool是一個(gè)通用庫(kù)支持腳本,只與后綴名為lo、la的libtool文件打交道。

      linux中l(wèi)a是什么文件

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

      linux中l(wèi)a是什么文件

      la: 使用libtool編譯出的庫(kù)文件,其實(shí)是個(gè)文本文件,記錄同名動(dòng)態(tài)庫(kù)和靜態(tài)庫(kù)的相關(guān)信息

      libtool的工作原理

      libtool 是一個(gè)通用庫(kù)支持腳本,將使用動(dòng)態(tài)庫(kù)的復(fù)雜性隱藏在統(tǒng)一、可移植的接口中;使用libtool的標(biāo)準(zhǔn)方法,可以在不同平臺(tái)上創(chuàng)建并調(diào)用動(dòng)態(tài)庫(kù)??梢哉J(rèn)為libtool是gcc的一個(gè)抽象,其包裝了gcc(或者其他的編譯器),用戶無(wú)需知道細(xì)節(jié),只要告訴libtool需要編譯哪些庫(kù)即可,libtool將處理庫(kù)的依賴等細(xì)節(jié)。libtool只與后綴名為lo、la為的libtool文件打交道。

      擴(kuò)展知識(shí):

      linux下的so、o、lo、a、la文件有什么區(qū)別?

      • o: 編譯的目標(biāo)文件

      • a: 靜態(tài)庫(kù),其實(shí)就是把若干o文件打了個(gè)包

      • so: 動(dòng)態(tài)鏈接庫(kù)(共享庫(kù))

      • lo: 使用libtool編譯出的目標(biāo)文件,其實(shí)就是在o文件中添加了一些信息

      libtool主要的一個(gè)作用是在編譯大型軟件的過(guò)程中解決了庫(kù)的依賴問(wèn)題;將繁重的庫(kù)依賴關(guān)系的維護(hù)工作承擔(dān)下來(lái),從而釋放了程序員的人力資源。libtool提供統(tǒng)一的接口,隱藏了不同平臺(tái)間庫(kù)的名稱的差異等細(xì)節(jié),生成一個(gè)抽象的后綴名為la高層庫(kù)libxx.la(其實(shí)是個(gè)文本文件),并將該庫(kù)對(duì)其它庫(kù)的依賴關(guān)系,都寫在該la的文件中。該文件中的dependency_libs記錄該庫(kù)依賴的所有庫(kù)(其中有些是以.la文件的形式加入的);libdir則指出了庫(kù)的安裝位置;library_names記錄了共享庫(kù)的名字;old_library記錄了靜態(tài)庫(kù)的名字。

      當(dāng)編譯過(guò)程到link階段的時(shí)候,如果有下面的命令:

      $libtool --mode=link gcc -o myprog -rpath /usr/lib –L/usr/lib –la

      libtool會(huì)到/usr/lib路徑下去尋找liba.la,然后從中讀取實(shí)際的共享庫(kù)的名字(library_names中記錄了該名字,比如liba.so)和路徑(lib_dir中記錄了,比如libdir=’/usr/lib’),返回諸如/usr/lib/liba.so的參數(shù)給激發(fā)出的gcc命令行。

      如果liba.so依賴于庫(kù)/usr/lib/libb.so,則在liba.la中將會(huì)有dependency_libs=’-L/usr/lib -lb’或者dependency_libs=’/usr/lib/libb.la’的行,如果是前者,其將直接把“-L/usr/lib –lb”當(dāng)作參數(shù)傳給gcc命令行;如果是后者,libtool將從/usr/lib/libb.la中讀取實(shí)際的libb.so的庫(kù)名稱和路徑,然后組合成參數(shù)“/usr/lib/libb.so”傳遞給gcc命令行。

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)