處理所有以#號開頭的檔案
標頭檔案(展開) 巨集定義(替換) 條件編譯(ifdefine)
gcc -e hello.c -o hello.i
把c轉換成彙編,且進行語法檢查
gcc -s hello.i -o hello.s
把彙編**轉換成二進位制
gcc -c hello.s -o hello.o
鏈結**用到的庫檔案
gcc hello.o -o hello
需要安裝對應的環境,只編譯檔案本身,檔案較小(gcc預設動態)
將編譯出的動態庫移動到usr/lib中gcc -fpic -shared f1.c f2.c -o lib***.so
gcc hello.c -o hello -l . -l ***
不依賴環境,檔案本身和庫檔案一起編譯,檔案較大
gcc hello.c -o hello -static
###編譯靜態庫
static表示靜態編譯 -l表示靜態庫編譯 -l表示庫名(不含lib)gcc -c ***.c ***.c(生成***.o ***.o)
ar -crv libmylib.a ***.o ***.o(做成靜態庫)
**示例:
target=hello#變數
object=hello.o f1.o f2.o#變數
$(target)
:$(object)
#一般格式
gcc $(object)
-o $(target)
#makefile隱含規則:當target中有*.o檔案時會自動搜尋*.c檔案編譯成*.o
.phony:clean#偽**
clean:
rm *.o $(target)
關於Delphi中預編譯指令的使用方法
在delphi中,也有與c相似的預編譯指令,雖然該類指令只在當前的單個檔案有效 也有可能是筆者未全面了解該類指令的真正用法 但是這一類指令對於進行多版本的製作工作 如從標準版中出學習版 確實有著相當不錯的用途。一 指令介紹 1 define指令 格式 說明 用於定義乙個在當前單元有效的符號 symb...
關於Delphi中預編譯指令的使用方法
在delphi中,也有與c相似的預編譯指令,雖然該類指令只在當前的單個檔案有效 也有可能是筆者未全面了解該類指令的真正用法 但是這一類指令對於進行多版本的製作工作 如從標準版中出學習版 確實有著相當不錯的用途。一 指令介紹 1 define指令 格式 說明 用於定義乙個在當前單元有效的符號 symb...
0909關於編譯原理的理解
1 編譯原理學什麼?答 編譯原理學習做程式的編譯器的原理和方法,內容包括語言和文法 詞法分析 語法分析 語法制導翻譯和中間 生成 儲存管理 優化和目標 生成等內容。2 為什麼學編譯原理?答 編譯原理蘊含著電腦科學中解決問題的思路 形式化問題和解決問題的方法,對軟體的設計開發具有一定的指導作用,學習它...