韦东山嵌入式第一期学习笔记DAY_3——7_1_裸机开发步骤简介

作者:GWD 时间:2019.7.4

一、课程内容:
1、问:windows、linux与arm(linux)建立工程的区别?
答:
在这里插入图片描述
2、问:ubuntu环境下编译一个C文件的过程?
答:
1)、建立一个hello.c文件,并且输入代码,输入完成后ESC+:wq退出vi编辑器;

在这里插入图片描述
在这里插入图片描述
2)、gcc编译,gcc+ –o +输出文件 +.c文件;
在这里插入图片描述
3)、运行hello_1文件;
在这里插入图片描述
3、问:什么是GCC?
答:gcc是linux系统下主要的编译软件,gcc的全称是GNU编译器套件(GNU Compiler Collection),除了可以编译c语言开发的程序外,还可以开发C++、Java等多个语言的程序。GCC的初衷是为GNU操作系统专门编写的一款编译器。
4、问:为什么用GCC而不用别的?
答:使用gcc的原因:功能强大、稳定、开源免费。
1)、gcc -v 查看gcc的版本,从而验证了gcc编译器正常。不论你使用哪一个版本的gcc,只有后面能够正常编译就可以了。
2)、gcc -o 输出文件名 源文件(o:output)
3)、arm-linux-gcc是基于linux平台的arm编译器。它是开源免费的编译器。arm-linux-gcc功能强大、稳定、支持的arm芯片众多、更新速度快。
5、问:什么是交叉编译模式?
答:交叉编译模式:通常编译嵌入式程序的平台成为宿主机(如:PC的ubuntu系统,CPU架构为X86架构),运行嵌入式程序的平台成为目标机(如:某款ARM开发板,CPU架构为ARM架构)。在X86平台编辑和和编译器arm-linux-gcc编译ARM架构的程序,两者属于不同的架构平台,从而属于交叉编译模式。然后将程序烧写到ARM开发板中(下载方式有:JTAG、USB、SD卡、网络等多种方式),然后在开发板上运行该程序。
二、学习要点:
1、问:为什么采用主机与目标板结合的交叉开发模式?
答:开发PC机上的软件时,可以直接在PC机上编辑、编译、调试软件,最终发布的软件也在PC上运行,但是对于嵌入式开发,嵌入式设备的资源不足以用来开发软件,所以需要交叉开发模式,在主机上编辑、编译、然后在目标板上运行、验证程序。
2、问:一个C文件如何变成可执行文件?
答:需要经过预处理、编译、汇编、连接四步才可以变成可执行文件。预处理:展开#开头的命令;编译:把C代码“翻译”成汇编代码;汇编:将第二步输出的汇编代码翻译成机器代码;连接:将目标文件与库文件连接起来,最终生成可以在特定平台运行的可执行文件。
三、代码(无)

猜你喜欢

转载自blog.csdn.net/gongweidi/article/details/94635806