gdb是什么?有什么功能?
樓主您好:我剛開始學嵌入式的時候會接觸到這些工具。我會多練習,尤其是vi和make。功能介紹如下:
1.GCC是編譯器,可以把C和C源文件編譯成exe可剪切文件,并生成可執行文件,就像。windows下的exe
2、GDB,一個調試工具,可以一步步調試你編譯好的可執行文件。如果你不t想用printf打印,這個是最合適的,但是在使用中要注意用gcc編譯并添加-g參數;
3、Make,是一個項目管理工具,通常通過編寫Makefile來管理大型項目的編譯,建議學習如何編寫Makefile;
4、Vi,是一個編輯工具,應該說是超級經典的,我一直在用Vi,與之抗衡的編輯工具是Emacs,根據個人喜好選擇。最后,祝你學習愉快,加油!
Linux的gcc是怎么用的?
在終端中輸入gcc文件名-o目標文件名,然后。/target文件名就可以了。如果沒有目標文件名,它將自動保存為一個以供執行。/a就可以了。使用Gcc編譯器時,必須給出一系列必要的調用參數和文件名。GCC編譯器有100多個調用參數,大部分我們可能根本用不到。這里只介紹最基本最常用的參數。GCC的基本用法是:∶GCC[選項][文件名]],其中選項是編譯器需要的參數,文件名給出相關的文件名。-c,只編譯,不鏈接成為可執行文件。編譯器只生成帶有后綴的目標文件。o從輸入的源代碼文件如。c,通常用于編譯不包含主程序的子程序文件。-ooutput_filename,確保輸出文件的名稱是output_filename,并且此名稱不能與源文件同名。如果沒有給出這個選項,gcc會給出預置的可執行文件a.out.-g,生成符號調試工具(GNU的gdb)所必需的符號信息。如果我們想調試源代碼,我們必須添加這個選項。-O,優化程序的編譯和鏈接。使用該選項,在編譯和鏈接的過程中會對整個源代碼進行優化,這樣可以提高生成的可執行文件的執行效率,但編譯和鏈接的速度相應較慢。-O2在優化編譯連接方面比-O好,當然整個編譯連接過程會慢一些。-Idirname將dirname指示的目錄添加到程序頭文件的目錄列表中,是預編譯期間使用的參數。C程序中的頭文件包含兩種情況:a)#includeltmyiNC.hgtb)#include"myinc.h",其中A類使用尖括號(ltgt),B類使用雙引號("").對于A類,預處理程序cpp在預置的文件目錄(如/usr/include)中搜索對應的文件,而對于B類,預處理程序在目標文件的文件夾中搜索對應的文件。GCC執行流程示例代碼a.c:#includelstdio.hgtintmain(){printf(