1. 程式人生 > >linux 下的 .a 檔案 .o 檔案 是什麼檔案?各有什麼作用?

linux 下的 .a 檔案 .o 檔案 是什麼檔案?各有什麼作用?

.o 就是object, 也就相當於windows下編譯的obj檔案, 俗稱目標檔案.
.a 就是archive, 也就相當於windows的VC下編譯的lib檔案, 俗稱靜態庫檔案.

.o檔案是連結檔案,.a是靜態庫檔案,靠.o檔案生成,作為一個庫為外部程式提供函式,介面。
生成.o檔案:
gcc -c test.o test.c
生成.a檔案:
ar cqs test.a test.o

.o 就相當於windows裡的obj檔案 ,一個.c或.cpp檔案對應一個.o檔案
.a 是好多個.o合在一起,用於靜態連線 ,即STATIC mode,多個.a可以連結生成一個exe的可執行檔案
.so 是shared object,用於動態連線的,和windows的dll差不多,使用時才載入。

相關推薦

Linux使用tail查詢日誌檔案關鍵詞顏色、高亮顯示

Linux下使用tail查詢日誌檔案關鍵詞高亮顯示 單個關鍵詞高亮顯示: tail -f 日誌檔案 | perl -pe 's/(關鍵詞)/\e[1;顏色$1\e[0m/g' tail -f catalina.out | perl -pe 's/(DEBUG)/\e[1;34m$

linux安裝mysql(rpm檔案安裝)

資料庫包下載: https://www.mysql.com/downloads/ 在GPL開原協議的社群開源版裡邊下載     我們用mysql community server裡邊的         其中workbench是客戶

LinuxNFS提供的共享檔案服務(企業級)

NFS NFS(Network File System)即網路檔案系統,是FreeBSD支援的檔案系統中的一種,它允許網路中的計算機之間通過TCP/IP網路共享資源。在NFS的應用中,本地NFS的客戶端應用可以透明地讀寫位於遠端NFS伺服器上的檔案,就像訪問本地檔案一樣。 好處

linux 使用 ftp 下載 rpm 檔案並安裝時提示 rpmReadSignature 錯誤

  想下載並安裝一個花生殼客戶端(CentOS 6.5 x64),使用 wget 一直無法成功,只好在主機(Win7 SP1 x64)上用工具下載,然後放到主機裡設定的一個簡單的ftp server裡,再在伺服器裡下載。可一直提示rpmReadSignature 錯誤,導致無法安裝。原來只要在

Linux解壓rar格式檔案

首先:rar檔案與zip tar.gz等等開源壓縮檔案是不一樣的,rar型別的壓縮協議是不開源的,所以linux系統自身是沒有安裝rar的解壓工具的,所以我們需要自己下載rar工具,注:由於rar型別並不可以,理論上是要收費的,所以我們在往伺服器上傳檔案時,儘量避免使用rar

Linux使用scp命令進行檔案遠端拷貝

scp是 secure copy的縮寫, scp是Linux系統下基於ssh登陸進行安全的遠端檔案拷貝命令。Linux的scp命令可以在Linux伺服器之間複製檔案和目錄。 使用語法:scp  [引數] [源路徑] @IP:/目標路徑 scp 引數如下: -1: 強制scp命令使用協

Linux編譯器搜尋標頭檔案路徑

作業系統: Linux localhost.localdomain 3.10.0-862.14.4.el7.x86_64 #1 SMP Wed Sep 26 15:12:11 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux 1.

Linux解壓 .tar.xz 檔案

就把這個檔案理解成兩層壓縮,解兩次。第二步就是直接解壓  .tar檔案的命令  xz -d    ***.tar.xz tar -xvf    ***.tar 或者直接一條命令,我一直用的是這個: tar

Linux用rm刪除的檔案的恢復方法

對於rm,很多人都有慘痛的教訓。我也遇到一次,一下午寫的程式就被rm掉了,幸好只是一個檔案,第二天很快又重新寫了一遍。但是很多人可能就不像我這麼幸運了。本文收集了一些在Linux下恢復rm刪除的檔案的方法,給大家作為參考。   首先,最好的方法是避免這個問題,以下是幾點建議

Linuxtar.xz結尾的檔案的解壓方法

今天嘗試編譯核心,下載到了一份tar.xz結尾的壓縮檔案,網上解決方法比較少,不過還是找到了,如下: $xz -d ***.tar.xz $tar -xvf  ***.tar       可以看到這個壓縮包也是打包後再壓縮,外面是xz壓縮方式,裡層是tar打包方式。

linux部署專案,下載檔案時,中文檔名亂碼問題

本人在linux伺服器的tomcat下部署一個war包專案,但是裡面建立中文檔名檔案一直亂碼,經過多重測試後找到解決方案: 需要在Tomcat啟動的時候強制設定LC_ALL 環境變量 =zh_CN.UTF­8,同時設定上­Dfile.encoding=UTF­8,如下圖是本人使用守護程序啟動to

linux執行mysql的sql檔案(maridb資料庫也可以,親測可行)----遷移資料庫

linux下執行mysql的sql檔案 可以利用WinSCP工具將window系統下的sql檔案上傳至伺服器,也可使用資料庫工具(推薦Nvaicat)遠端連線操作資料庫 mysql -uroot -proot -- 登入並選擇資料庫(需要前提建立好資料庫) 進入到mys

Linuxvi編輯器編輯檔案時對於意外退出的文件的再次開啟的解決方案

1、當我們在虛擬機器裡面編輯檔案的時候,喜歡用vi編輯器,但是由於叢集的不穩定,或者自己開啟以後忘記關閉,切換到另一個介面繼續工作,當再次回來時候,已經失去了編輯的能力了。當我們再次開啟此檔案的時候就會出現如下介面:<--當時出錯忘了截圖了,只顧著解決呢,也是學習了一些

Linux遞迴遍歷檔案和資料夾

#include<stdio.h> #include<stdlib.h> #include<unistd.h> #include<sys/stat.h> #include<string.h> #include<fcntl.h>

Linux*.tar.gz/.tar.bz2 檔案解壓縮安裝命令

1. .tar.gz壓縮命令: 命令格式:tar -zcvf 壓縮檔名.tar.gz 被壓縮檔名 可先切換到當前目錄下。壓縮檔名和被壓縮檔名都可加入路徑。 2. .tar.gz解壓縮命令: 命令格式:tar -zxvf 壓縮檔名.ta

Linux運用虛擬機器進行檔案操作

檔案許可權 檔案許可權存在的意義 系統最底層安全設定方法之一 保證檔案可以被可用的使用者做相應的操作 檔案許可權的檢視 ls -l file ls -ld dir ll file ll -d dir -l用來檢視檔案 -d用來檢視目錄 檔案許可權的讀取 -

linux檢視mysql的配置檔案

首先先看看你的mysql在哪,通過which命令 which mysql 顯示出目錄比如我的是下面這個 /usr/bin/mysql 接下來就可以針對這個目錄通過一些命令檢視配置檔案在哪了,

linux使用kpartx掛載虛擬檔案系統

linux下使用kpartx掛載虛擬檔案系統在linux中,如果映像檔案(.img)含有分割槽表的話,那麼用losetup這個程式來載入檔案系統就有點力不從心了。因為losetup只能載入無分割槽的檔案

linux.tar.gz和.gz檔案解壓詳解,zip壓縮和unzip解壓縮命令詳解

.tar.gz和.gz檔案是兩種不同的檔案,需要區別對待,解壓命令當然也不同咯,下面來分享一下他們各自的解壓方法。1. .tar.gz檔案,這種檔案是tar檔案的壓縮檔案,可以使用tar命令進行解壓。例如:解壓:tar zxvf pythontab.tar.gztar -xj

Linux刪除特殊檔名的檔案

Linux下刪除類似檔名為:?1?E?$??ٌ$??y}~Oڸ5?Xv^?v?l??[??ʊS的檔案 先用ls -i查詢inode 號,假設為131077,然後執行命令: find ./ -inum 131077 | xargs rm -f 如果檔名是以 - 連字元開頭的,