gcc和cc區別
cc源自UNIX, 意爲c compiler。
gcc源自Linux,意爲GNU compiler collection,是編譯器集合。
參考:https://www.cnblogs.com/zhouyinhui/archive/2010/02/01/1661078.html
gcc用法
gcc [options] [filenames]
命令 | 說明 | 參考 |
---|---|---|
-E | 僅執行編譯預處理 | gcc -E main.c -o main.i |
-c | 只編譯不輸出,生成.o文件 | gcc -c main.c |
-o | 指定生成輸出文件 | gcc main.c -o main |
-S | 將C語言轉換成彙編語言 | gcc -S main.c |
-O | 優化編譯,編譯速度慢 | |
-I | 向 gcc 的頭文件搜索路徑中添加新的目錄。 | |
-L | 如果使用了不在標準位置的庫文件,那麼可以通過 -L 選項向 gcc 的庫文件搜索路徑中添加新的目錄。 | |
-l | 用 -l 選項指定鏈接的庫文件名時可以省去 lib 這3個字母 | |
-v | 輸出 gcc 工作的詳細過程 | |
–target-help | 顯示目前所用的gcc支持CPU類型 | |
-Q | 顯示編譯過程的統計數據和每一個函數名 | |
-O2 | 比-O更好的優化編譯 | |
-g | 產生符號調試工具 | |
-pedantic | 當gcc在編譯不符合ANSI/ISO C 語言標準的源代碼時,將產生相應的警告信息 | |
-Wall | 使 gcc 產生儘可能多的警告信息。 | |
-Werror | 將所有的警告當成錯誤進行處理 | |
-Wcast-align | 要求內存對齊 | |
-static | 強制使用靜態鏈接庫。 | |
-shared | 生成一個共享的目標文件,它能夠與其他的目標一起鏈接生成一個可執行的文件 | |
-save-temps | 保存編譯過程中生成的一些列中間文件。 |