一:庫檔案型別
1:.a代表傳統的靜態檔案庫
<1>靜態庫的實驗
假設有三個檔案fred.c、bill.c和program.c.
fred.c
#includevoid fred(int arg)
bill.c
#includevoid bill(char 8arg)
program.c
#include"lib.h"
int main()
其中的lib.h為
void bill(char *);
void fred(int);
fred.c、bill.c和program.c經過編譯後生成fred.o、bill.o和program.o.可以用ar(archive)將bill.o和fred.o歸為靜態庫:
ar crv libfoo.a bill.o fred.o
然後就可以將program.c連線成可執行檔案:
$gcc –o program prgram.o libfoo.a
也可以用-l選項來訪問我們的庫函式,但是因為其未儲存在標準位置,所以我們必須用-l選項只是編譯器在何處可以找到它,如下所示
$gcc –o program program.o –l. –lfoo
-l.選項只是編譯器在當前目錄(.)中查詢函式庫。-lfoo選項只是編譯器使用名為libfoo.a的函式庫。
2:.so代表共享函式庫
Linux程式設計學習系列(第一章)
ubuntu預設不包含編輯器vim和編譯器gcc。因此首先要將所需要的執行環境安裝配置好。1.apt get update 2.安裝vim sudo apt get install vim 3.安裝gcc sudo apt get install g 新建檔名為hello.c的原始檔 輸入vim h...
Linux學習 第一章
1.linux應用程式 可執行檔案 計算機可以直接執行的程式 的.bat cmd 檔案。2 path 變數,新增路徑,使用 分隔 3 linux 使用正斜線 分隔檔名裡的目錄名,4 標頭檔案 提供對 常量的定義和對系統函式及庫函式 呼叫的宣告 一般位於 usr include 目錄及其子目錄中 依賴...
Linux學習筆記 第一章
2 遠端登入工具 3 linux的一些特點 主要有主分割槽和拓展分割槽兩種 以上主分割槽加拓展分割槽不能超過4個的限制是由硬體裝置決定的 格式化指的是寫入檔案系統 格式化相當於將分割槽之後的硬碟切分為更小的block,一般來講是是4kb 所以有時候在檢視檔案的時候實際檔案大小和占用空間會不一樣 對於...