linux learn

cat ss.c | wc -l 管道 前一條指令的輸出,作爲後一條指令wc的輸入

file ss.c

gcc -E  預編譯  頭文件include什麼的

  -S  編譯  產生彙編代碼

-c  鏈接以前的都做了,即完成E S的工作以後然後生成.o 這種二進制模塊文件

as 彙編過程,assembler,將彙編代碼搞成二進制.o

 

gcc  --help  兩個橫槓這種要記住,是用來看說明help的

gcc   xx.o  -o  xx  即把.o進行鏈接了。   ./xx 執行該可執行文件,./ 表示當前文件夾目錄

 

 

 

 

 

寫makefile的時候

一種寫法:

CC=gcc

CFLAGS=-Wall

a: b.o a.o

這種寫法,通過依賴關係以及編譯器參數選擇,進行編譯、鏈接,但是要注意的鏈接而成的可執行文件a最好要與有main函數的模塊同名

如a 與 a.o同名

 

另一種寫法:

直接自己寫

test: b.o a.o

gcc b.o a.o -o test

test:標籤編譯b.o a.o,最後自己寫的這條command將a.o,b.o鏈接到一塊形成test可執行模塊

 

 

 

/usr/include  下有c的一些頭文件,包括 stdio.h stdlib.h等等

/usr/lib         下有libc.a  libm.a等等庫,其中libc.a 就是c標準庫,gcc默認鏈接的,其他需要 -lm 這種方式指定鏈接

 

 

sudo apt-get install libglib2.0-dev

pkg-config --cflags glib-2.0

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章