4.3 嵌入式Linux_C语言开发工具.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
4.3 嵌入式Linux_C语言开发工具

本节目标 C语言的产生历史背景 嵌入式Linux下C语言的开发环境 编辑器vi 编译器GCC 工程管理器make 调试器GDB 4.3.1 嵌入式Linux下c语言概述 C语言的起源 C语言是中级语言 C语言功能齐全 C语言是模块化的语言 程序可移植性好 嵌入式Linux C语言编程环境 编辑器 编译链接器 调试器 项目管理器 4.3.2 编辑器vi Vi是Linux系统的第一个全屏幕交互式编辑程序。 Vim是vi的增强版。 4.3.2 编辑器vi 1 vi的基本模式 2 vi的基本操作 1 vi的基本模式 命令行模式(Command mode) 通常进入vi后默认处于命令行模式。在此模式下任何键盘的输入都是作为命令来对待。 插入模式(Insert Mode) 用户按一下字母键i进入插入模式,只有在插入模式下才可以进行字符输入,用户按[Esc]键可回到命令行模式下。 底行模式(Last line mode) 在此模式下,用户可以将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号等。 2 vi的基本操作 1. vim的进入、保存和退出 进入vim可以直接在命令终端下键入vim <文件名>,vim可以自动载入所要编辑的文件或是开启一个新的文件。如在shell中键入vim hello.c(新建文件)则可进入vim环境。进入vi后屏幕左方会出现波浪符号,凡是具有该符号就代表此列目前是空的。此时进入的是命令行模式。 要退出vim可以在命令行模式下键入“:q”(不保存并退出)或“:q!”(不保存并强制退出)或“:wq”(保存并退出)指令则是保存之后再离开(注意冒号)。 2 vi的基本操作 2 vi的基本操作 2. 光标的移动 除了使用标准光标键移动光标之外,vim还提供了很多复杂的光标移动方式。 2 vi的基本操作 3. 文本编辑 文本编辑包括输入、修改、复制、粘贴、删除(可以用Del键和Backspace键)和恢复等操作 。 2 vi的基本操作 4. 查找与替换 vim的查找和替换功能都支持正则表达式,可以匹配非常复杂的关键字,功能非常强大。 4.3.3 编译器GCC GCC(GNU Compiler Collection,GNU编译器套装) 是一套由 GNU 开发的编程语言编译器。 是GNU项目中符合ANSI C标准的编译系统,能够编译用C、C++和Object C等语言编写的程序,还可以编译Linux内核本身。而且gcc又是一个交叉平台编译器,支持的硬件平台很多,如arm、avr、i386、m68k、mips、powerpc、sparc等等 它能够在当前CPU平台上,为多种不同体系结构的硬件平台开发软件,因此尤其适合在嵌入式领域的开发编译。 2 GCC的编译流程 GCC使用的基本语法为: gcc [option | filename] GCC的编译流程分为了4个步骤,分别为: ? 预处理(Pre-Processing) ? 编译(Compiling) ? 汇编(Assembling) ? 链接(Linking) 2 GCC的编译流程 ? 预处理(Pre-Processing) 处理的主要作用是通过预处理的内建功能对一些可预处理资源进行等价替换,最常见的可预处理资源有:文件包含、条件编译、布局控制和宏处理等。 gcc的选项“-E”可以使编译器在预处理结束时就停止编译,选项“-o”是指定GCC输出的结果,其命令格式为如下所示。 gcc –E –o [目标文件] [编译文件] 例如: $ gcc –E –o hello.i hello.c 2 GCC的编译流程 ? 编译(Compiling) 编译器在预处理结束之后,gcc首先要检查代码的规范性、是否有语法错误等,以确定代码的实际要做的工作,在检查无误后,就开始把代码翻译成汇编语言,gcc的选项“-S”能使编译器在进行汇编之前就停止。 由表2.6可知,“.s”是汇编语言原始程序,因此,此处的目标文件就可设为“.s”类型。 $ gcc –S –o hello.s hello.i 2 GCC的编译流程 ? 汇编(Assembling) 汇编阶段是把编译阶段生成的“.s”文件生成目标文件,读者在此使用选项“-c”就可看到汇编代码已转化为“.o”的二进制目标代码了。如下所示。 $ gcc –c hello.s –o hello.o 2 GCC的编译流程 ? 链接(Linking) 完成了链接之后,gcc就可以生成可执行文件,其命令如下所示。 $ gcc hello.o –o hello 运行该可执行文件,出现正确的结果。 $ ./hello hello,

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档