源碼編譯gcc112
下載一個VC2005軟體,把代碼復制到裡面,設置好C運行環境,點擊編譯,OK,然後點擊那個感嘆號,直接鏈接運行,就OK了。
⑵ 怎樣調試GCC源碼
一、linux程序gcc編譯步驟:
Gcc編譯過程主要的4個階段:
l 預處理階段,完成宏定義和include文件展開等工作;(.i)
l 根據編譯參數進行不同程度的優化,編譯成匯編代碼(.s.S)
l 用匯編器把匯編代碼進一步生成目標代碼(.o)
l 用連接器把生成的目標代碼和系統或用戶提供的庫連接起來,生成可執行文件
格式:
l gcc -E test.c//預處理階段
l Gcc -S test.c//編譯階段
l Gcc -c test.c//匯編階段
l Gcc -o test test.c//鏈接階段
二、Linux程序gdb調試步驟:
Gdb的功能:
l 設置斷點
l 監視程序變數的值
l 程序的單步執行
l 顯示、修改變數的值
l 顯示、修改寄存器
l 查看程序的堆棧情況
l 遠程調試
Gdb調試過程:
1、程序經過預處理後,即進入編譯階段,進入編譯階段,首先聲明編譯:
2、格式:gdb -o test test.c -g
3、進入編譯:gdb test
4、顯示需要編譯調試的源程序:l(list)//list filename
5、設置斷點:b(break)行號
6、查看設置的斷點:info b
7、運行調試程序:run
8、跳到下一個斷點:c(continue)
9、單步運行的話使用:n(next)/s(step into)跳到函數體 //區別在與:next執行函數體,而step不執行函數體
10、調試過程中查看某個變數的變化:print i (每次都要手動設置)//display i(設置一次一直尾隨,直到用「undisplay 變數標號」 停止)
11、退出當前的調試使用finish 跳出函數
12、清楚斷點 clear 行號
13、Delete 斷點信息序號// 刪除所有斷點或設置的要刪除的斷點
14、退出調試 q
15、b num if i==20 設置斷點的觸發條件
16、condition num i==50 改變斷點的觸發條件
⑶ 請問linux下,gcc編譯程序的過程(從讀取源文件到製作可執行程序中間所有過程,越詳細越好)
gcc -S *.c 預處理+反匯編
⑷ 如何在Windows下編譯GCC
方法如下:
雙擊GCC安裝包,mingw-get-setup.exe,點擊Install安裝。
點擊Change選擇安裝路徑,盡量不要有中文和空格,
將package 下面的mingw-***和mingw32-***和msys-**。都勾選上,等待下載安裝,直到勾選框全部變成土灰色。
找到安裝目錄的bin目錄,將路徑右鍵復制下來。
找到計算機,右鍵,屬性。點擊 高級系統設置。
找到下面的 環境變數 點擊。
在系統變數裡面找到 Path變數,雙擊出現下面輸入框,在變數值的末尾添加剛剛復制的bin目錄,並在最後加上英文狀態下 的分號(;)。點擊確定。
測試是否安裝成功,在cmd命令提示符裡面輸入 gcc --help 回車鍵,
EditPlus 3 安裝完成之後的界面點擊File 下的 new C/C++
出現以下測試代碼,保存到指定目錄,最後不要有空格和中文,我保存到E:/My/Test下面測試。文件名為test.c
命令提示符窗口進入到 E:/MyTest 下 用dir 命令顯示當前目錄下的所有文件。
使用gcc 命令編譯 命令格式 如下 gcc test.c - o test 回車鍵。編譯完成。
直接輸入test運行,輸出hello,world。
測試完成。
⑸ cmd調用gcc編譯c源碼,並傳參
下面將通過對一個程序的編譯來演示整個過程。
1
2
3
4
5
6
7
#include <stdio.h>
int main()
{
printf("happy new year!\n");
return 0;
}
1:預處理:編譯器將C程序的頭文件編譯進來,還有宏的替換,可以用gcc的參數-E來參看。
命令:gcc -E hello.c -o hello.i
作用:將hello.c預處理輸出hello.i
2:編譯:這個階段編譯器主要做詞法分析、語法分析、語義分析等,在檢查無錯誤後後,把代碼翻譯成匯編語言。可用gcc的參數-S來參看。
編譯器(ccl)將文本文件hello.i 翻譯成文本文件hello.s, 它包含一個匯編語言程序。匯編語言程序中的每條語句都以一種標準的文本格式描述了
一條低級機器語言指令。
⑹ gcc 編譯生成外部調試語法文件
你用的是linux系統吧? binutil包裡面有個objcpy命令:
obj --only-keep-debug [被提取的文件] [提取出來的調試符號文件,建議加.debug後綴]
另外要把調試信息去掉是用strip命令。你可以man下看看。
strip --strip-debug [需要處理的文件]
把debug信息加回去:
obj --add-gnu-debuglink=[debug文件] [需要添加debug信息的文件]
⑺ 如何再mac OS下編譯安裝gcc源碼
有一個叫xcode的軟體這個軟體可以實現c語言編程,這是一個蘋果原生的程序,是為蘋果程序的開發人員編寫的,但是我們也可以用。下載地址在威鋒論壇上應該是有的,安裝之後在你電腦的macintosh hd裡面的developer裡面的applications裡面就會看
⑻ gcc編程,源代碼放在哪裡呢怎麼使用GCC編譯文件呢說詳細點,謝謝。
源代碼放在哪裡都可以。
比如源文件叫source.c的話,編譯方法就是在源文件所在的目錄下執行下面命令:
gcc -o target source.c
target就是你編譯後的可執行文件,名字取什麼都可以。
另外,糾正個小問題,gcc編程這種說法不太准確,gcc是編譯器,不是編程語言。
⑼ 源碼編譯安裝gcc,怎樣會出現全是no
講真不建議自己編譯gcc,我成功過,但在windows上很艱難
configure全是no說明你缺少一些庫,或者一些特性是關閉的,或者找不到一些程序如doxygen之類的
windows上用cygwin有可能可以編譯
configure時要配置一些參數
無論是不是為了交叉編譯,網上的一些arm-linux-gcc的搭建教程中的gcc參數和編譯步驟是可以參考的。
具體問題可以追問我