嵌入式学习笔记(六) --程序的编译和执行

2019-07-12 19:27发布

    笔者前面已经学过了Linux的基本命令,vi编辑器的使用。那么当我们编辑好一个.c文件时,如何执行它呢!? 要知道一个程序跑起来要经过编译和运行两大过程。编译将源代码生成可执行文件,然后执行查看结果。  

一、gcc编译器

gcc(GNU Compiler)是GNU推出的多平台编译器,可将C、C++源程序编译连接成可执行文件,支持以下后缀:
.c             c语言源代码
.h 程序所包含的头文件
.i 已经预处理过的C源代码文件
.s 汇编语言源代码文件 .o 编译后的目标文件  

二、使用方法

1.     gcc –o hello hello.c -o 输出可执行文件 -c 只要求编译器输出目标代码(.o文件),而不必输出可执行文件 -g 用于调试 hello是可执行文件的名字(如果没有填写hello 默认是a.out),hello.c是你要编译的代码!   2.     ./hello  查看输出结果  

三、程序 编辑--编译--执行--调试 的完整过程

1.通过vi编辑器将程序写好

2.使用gcc编译器编译

3.执行查看结果

 

4.如果有错误(代码错误或者是逻辑错误),再返回去改正

5.再编译执行....直到成功

    问:有没有搞错,我的程序是要在板子上运行的,为什么到你这就编程纯Linux机上开发了!!? 答:gcc实际上是一个编译器集,因为它不仅支持 C 语言编译,还支持 C++, Ada,Objective C 等许多语言。另外 GCC 对硬件平台的支持,可以所无所不在,它不仅支持 X86处理器架构, 还支持 ARM, Motorola 68000, Motorola 8800,AtmelAVR,MIPS 等处理器架构。arm-linux-gcc 是基于 ARM 目标机的交叉编译软件,可以通过arm-linux-gcc完成 linux-arm的开发,所以只是换了一个编译器,同时c开发性质不变。       相关链接 嵌入式学习笔记(一)  --Ubuntu开发环境搭建 :https://blog.csdn.net/feit2417/article/details/80738940 嵌入式学习笔记(二) --Ubuntu上配置vim编辑器和共享文件 : https://blog.csdn.net/feit2417/article/details/80738940 嵌入式学习笔记(三) --Linux文件系统: https://blog.csdn.net/feit2417/article/details/80738940 嵌入式学习笔记(四) --Linux文件和目录相关命令: https://blog.csdn.net/feit2417/article/details/80753329 嵌入式学习笔记(五) --vi编辑器: https://blog.csdn.net/feit2417/article/details/80759402 嵌入式学习笔记(六) --程序的编译和执行: https://blog.csdn.net/feit2417/article/details/80765177