日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux下的cc/gcc命令

發布時間:2024/3/24 linux 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux下的cc/gcc命令 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

linux系統的C編譯器為gcc,它是GNU推出的功能強大的編譯工具,因為UNIX系統的編譯器為cc,所以在Linux系統還保留一個鏈接cc,用于和UNIX的向后兼容。

其中g++和c++與gcc和cc的使用參數大致相同

gcc/cc常用命令 -o:指定生成的輸出文件; -E:僅執行編譯預處理; -S:將C代碼轉換為匯編代碼; -wall:顯示警告信息; -c:僅執行編譯操作,不進行連接操作。 -O:使用編譯優化級別1編譯程序。級別為1~3,級別越大優化效果越好,但編譯時間越長。

1 假設源程序文件名為test.c

#include <stdio.h>void main(){printf("Hello world! \n ");} 輸入 gcc test.c

將test.c預處理、匯編、編譯并鏈接形成可執行文件。這里未指定輸出文件,默認輸出為a.out。

2 輸入 gcc -o 指定生成的輸出文件
將test.c預處理、匯編、編譯并鏈接形成可執行文件test。-o選項用來指定輸出文件的文件名。

gcc -o exp test.c

得到可執行文件為exp

3 輸入gcc -E 僅執行編譯預處理

gcc -o test.i -E test.c

將test.c預處理輸出test.i文件。

4 輸入 gcc -S 將C代碼轉換為匯編代碼;
gcc -S test.i將預處理輸出文件test.i匯編成test.s文件

5 輸入 gcc -c 僅執行編譯操作,不進行連接操作。
gcc -c test.s將匯編輸出文件test.s編譯輸出test.o文件。

6 無選項鏈接
gcc test.o -o test
將編譯輸出文件test.o鏈接成最終可執行文件test。

7 輸入 gcc -O
gcc -O1 test.c -o test使用編譯優化級別1編譯程序。級別為1~3,級別越大優化效果越好,但編譯時間越長。

8 多個文件一起編譯
gcc test1.c test.c -o test將test1.c和test.c分別編譯后鏈接成test可執行文件。2分別編譯各個源文件,之后對編譯后輸出的目標文件鏈接。
gcc -c test1.c #將test1.c編譯成testfun.o
gcc -c test.c #將test.c編譯成test.o
gcc -o test1.o test.o -o test #將test1.o和test.o鏈接成test

其他參數

總結

以上是生活随笔為你收集整理的linux下的cc/gcc命令的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。