Gcc最基本的用法是∶gcc [options] [filenames] 其中options就是編譯器所需要的參數(shù),filenames給出相關的文件名稱。 -c,只編譯,不連接成為可執(zhí)行文件,編譯器只是由輸入的.c等源代碼文件生成.o為后綴的目標文件,通常用于編譯不包含主程序的子程序文件。 -o output_filename,確定輸出文件的名稱為output_filename,同時這個名稱不能和源文件同名。如果不給出這個選項,gcc就給出預設的可執(zhí)行文件a.out。 -g,產(chǎn)生符號調(diào)試工具(GNU的gdb)所必要的符號資訊,要想對源代碼進行調(diào)試,我們就必須加入這個選項。 -O,對程序進行優(yōu)化編譯、連接,采用這個選項,整個源代碼會在編譯、連接過程中進行優(yōu)化處理,這樣產(chǎn)生的可執(zhí)行文件的執(zhí)行效率可以提高,但是,編譯、連接的速度就相應地要慢一些。 -O2,比-O更好的優(yōu)化編譯、連接,當然整個編譯、連接過程會更慢.
創(chuàng)新互聯(lián)建站主要從事做網(wǎng)站、成都網(wǎng)站制作、網(wǎng)頁設計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務巧家,10年網(wǎng)站建設經(jīng)驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:13518219792
例子:
gcc -o test test.c
結果生成可執(zhí)行文件test
你說的調(diào)試是什么意思?
如果是想用GDB工具進行調(diào)試在gcc選項中加入-g
例如:gcc *.c -o -g * (其中*是你的文件名,兩個*可以不同)
然后用 gdb *(上面命令中第二個*)
然后,就看你想怎么調(diào)試了。
GDB有很多命令
list 列出代碼
break 設置斷點
run 運行程序
step 但不執(zhí)行
quit 退出
……
你這個是多進程的。說實話,沒用GDB調(diào)過。
不過簡單看來你的子進程沒有exit()函數(shù)。
如果你運行結果不對,那么看看你的子進程的問題吧
1、打開kali linux的終端。創(chuàng)建一個文件并命名為test.c。在終端輸入:touch test.c。
2、可以看到已經(jīng)生成了一個后綴為test.c的源文件。然后用vim工具打開這個文件并編寫代碼。在終端中輸入:vim test.c或者gvim test.c打開這個文件并編寫代碼。
3、編寫完了這個代碼。現(xiàn)在開始編譯源文件。在終端中輸入:gcc test.cgcc是linux自帶的c語言編譯器。如果是windows則要用ide工具來編譯。linux系統(tǒng)一般寫C語言用gcc +vim+gdb三個自帶的工具就可以了。
4、打完gcc test.c編譯完C源文件。然后就可以看見a.out的文件。一般linux系統(tǒng)就默認為a.out為編譯完的文件?,F(xiàn)在運行a.out文件。在a.out文件的目錄下打開終端并輸入./a.out就是運行文件了。
5、如果想要編譯完的文件名不要用a.out文件。就可以在編譯時打入.gcc test.c -o test.out然后就可以看見有一個test.out.文件 了。-o后面跟著的編譯生成的文件名。
6、再運行test.out在終端中輸入./test.out結果如圖。這樣在linux系統(tǒng)下編譯并運行C語言就完成了。
linux如何編譯c程序呢,下面就讓我們來看看吧。
1、打開Linux系統(tǒng),啟動shell命令終端。
2、在終端中輸入gedithelloworld.c命令并回車。
3、進入之后進行編譯,編譯好后保存并退出。
4、輸入gcchelloworld.c命令并回車,等待編譯成功。
5、輸入命令./a.out即可運行程序。
以上就是小編的分享,希望能幫助的大家。