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(