1 **預處理(
展開巨集,去掉注釋資訊等
)gcc -e ./codetest.c -o ./codetest.i
2 生成物件檔案
gcc -c ./codetest.i -o ./codetest.o
3 生成可執行檔案
gcc ./codetest.o -o ./codetest
至此,生成了可執行檔案codetest,在命令列下執行./codetest,即可輸出結果
4 指定依賴項方式
g ++ ./test.cpp-lpthread-o ./test
其中,-lpthread為指定的依賴項
5 **除錯方式
① 編譯**生成可執行檔案(假定為main)以及除錯資訊。(新增-g 指定,可以生成除錯資訊)
② 使用gdb除錯,命令為:g
db main
③ 設定斷點
b + 行號
③ 檢視**
list+行號(檢視當前**檔案)
④ 檢視指定**檔案
list+檔名:行號
⑤ 開始除錯
使用start開始除錯
⑥ 使用until,執行到斷點處
⑦ 使用step命令,跳入函式內; 命令n,逐行除錯
⑧ 檢視變數當前值 print 變數名 (列印堆疊)
⑦ 檢視run
需要除錯,在編譯時必須指定編譯選型-g,否則除錯過程中,list不到cpp內容。
6 指定使用的c++版本
使用引數-std=c++11, 此處c++11指定的使用的c++的版本
7 生成除錯資訊
使用命令-g,可以生成除錯資訊,在使用gdb除錯時有用處
注意: 上述內容,對於gcc和g++均適用
g 編譯使用方法
用g 編譯單個原始檔myprog.cc很簡單,只要把檔名當引數傳給g 就行了。g myprog.cc ls l rwxr xr x 1 wvh users 13644 oct 5 16 17 a.out rw r r 1 wvh users 220 oct 5 16 17 myprog.cc 預設情...
使用GCC和G 編譯
1 編譯c檔案 main.c檔案內容如下 include int main printf hello world return 0 然後進行編譯 gcc o 目標名 c語言檔名如 deepfuture deepfuture desktop gcc o dp main.c deepfuture dee...
Linux環境使用g 編譯C
以下述c 的編譯為例 helloworld.cpp include intmain int argc,char ar 該 可用以下命令編譯 g helloworld.cpp 編譯器 g 通過檢查命令列中指定的檔案的字尾名,可識別其為 c 源 檔案。編譯器預設的動作 編譯源 檔案生成物件檔案 obje...