一、編譯,生成執行檔案,預處理 -> 編譯(譯為彙編**) -> 彙編 -> 鏈結 -> 可執行檔案
make,需先手動/自動生成makefile檔案,make內建gcc,g++
二、檢視檔案依賴項
pmap
三、gdb/cgdb除錯:
start >> 開始執行程式,停止在main函式開始處
列印info
執行緒、堆疊
info threads 檢視當前所有執行緒,其中前面加「*」執行緒為當前執行執行緒
thread id 切換當前除錯執行緒位制定id的執行緒,適用於多執行緒環境
where 檢視程式出錯地方
多執行緒 set scheduler-locking off|on|step,使用多執行緒除錯會發現,在使用step或者continue命令除錯當前被除錯執行緒的時候,其他執行緒也是同時執行的,可設定此引數來防止其它執行緒執行
檢視檔案
其它show
set斷點
訊號signal,gdb可接受外部訊號來處理當前程式狀態
多程序set follow-fork-mode child
set detach-on-fork off
CMake生成的可執行檔案能夠gdb除錯
採用 gdb 除錯時 出現 如下 錯誤 no debugging symbols found set cmake build type debug 在下面加入 set cmake cxx flags debug env o0 wall g ggdb set cmake cxx flags relea...
生成可執行檔案過程
c語言編譯全過程 編譯的概念 編譯程式讀取源程式 字元流 對之進行詞法和語法的分析,將高階語言指令轉換為功能等效的彙編 再由匯程式設計序轉換為機器語言,並且按照作業系統對可執行檔案格式的要求鏈結生成可執行程式。編譯的完整過程 c源程式 預編譯處理 c 編譯 優化程式 s asm 匯程式設計序 obj...
pycharm生成可執行檔案
1.pycharm開啟terminal對話方塊 view tool windows terminal 2.安裝pyinstaller pip3 install pyinstaller 3.將py檔案轉換為相應作業系統可執行檔案 pyinstaller f onefile py 4.開啟py檔案所在的...