网站大量收购闲置独家精品文档,联系QQ:2885784924

第3章 嵌入式Linux编程环境.ppt

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 嵌入式Linux编程环境

嵌入式Linux操作系统 第3章 嵌入式Linux编程环境 第1章 嵌入式Linux操作系统简介 第2章 Linux操作系统使用与系统配置 第3章 嵌入式Linux编程环境 第4章 存储管理 第5章 操作系统进程 第6章 进程间通信 第7章 中断与系统调用 第8章 文件管理 第9章 设备管理 第10章 嵌入式Linux的构建 第3章 嵌入式Linux编程环境 3.1 Linux编辑器vi的使用 3.2 gcc编译器 3.3 gdb调试器 3.4 Make工程管理器 3.5 使用autotools 思考题 3.1 Linux编辑器vi的使用 Linux编辑器 行编辑器(ed、ex) 行编辑器每次只能对单行进行操作,使用起来很不方便 全屏幕编辑器(vi、emacs) 全屏幕编辑器可以对整个屏幕进行编辑,用户编辑的文件直接显示在屏幕上 vi是Linux系统的第一个全屏幕交互式编辑程序 3.1 Linux编辑器vi的使用 3.1.1 vi的模式 vi有3种模式:命令行模式、插入模式、底行模式 (1)命令行模式 用户在用vi编辑文件时,最初进入的为一般模式。在该模式中可以通过上下移动光标进行“删除字符”或“整行删除”等操作,也可以进行“复制”、“粘贴”等操作,但无法编辑文字。 (2)插入模式 只有在该模式下,用户才能进行文字编辑输入,用户课按[ESC]键回到命令行模式。 (3)底行模式 在该模式下,光标位于屏幕的底行。用户可以进行文件保存或退出操作,也可以设置编辑环境,如寻找字符串、列出行号等。 3.1 Linux编辑器vi的使用 3.1.2 vi的基本流程 (1)进入vi,即在命令行下键入vi hello(文件名)。此时进入的是命令行模式,光标位于屏幕的上方,如图3.1所示。 (2)在命令行模式下键入i进入到插入模式,如图3.2所示。可以看出,在屏幕底部显示有“插入”表示插入模式,在该模式下可以输入文字信息。 (3)最后,在插入模式中,输入“Esc”,则当前模式转入命令行模式,并在底行行中输入“:wq”(存盘退出)进入底行模式,如图3.3所示。 这样,就完成了一个简单的vi操作流程:命令行模式→插入模式→底行模式。 3.1 Linux编辑器vi的使用 3.1.3 vi的各模式功能键 (1)命令行模式常见功能键如表: (2)插入模式的功能键只有一个, 也就是Esc退出到命令行模式。 (3)底行模式常见功能键如表所示: 3.2 gcc编译器 GNU CC(简称为Gcc)是GNU项目中符合ANSI C标准的编译系统,能够编译用C、C++和Object C等语言编写的程序。gcc不仅功能强大,而且可以编译如C、C++、Object C、Java、Fortran、Pascal、Modula-3和Ada等多种语言,而且gcc又是一个交叉平台编译器,它能够在当前CPU平台上为多种不同体系结构的硬件平台开发软件,因此尤其适合在嵌入式领域的开发编译。本章中的示例,除非特别注明,否则均采用gcc版本为4.0.0。 下表3.3是gcc支持编译源文件的后缀及其解释。 3.2 gcc编译器 3.2.1 gcc编译流程解析 gcc的编译流程分为了4个步骤,分别为: ? 预处理(Pre-Processing); 编译器将上述代码中的stdio.h编译进来,并且用户可以使用gcc的选项“-E”进行查看,该选项的作用是让gcc在预处理结束后停止编译过程。 ? 编译(Compiling); gcc首先要检查代码的规范性、是否有语法错误等,以确定代码的实际要做的工作,在检查无误后,gcc把代码翻译成汇编语言。用户可以使用“-S”选项来进行查看,该选项只进行编译而不进行汇编,生成汇编代码。 ? 汇编(Assembling); 汇编阶段是把编译阶段生成的“.s”文件转成目标文件,读者在此可使用选项“-c”就可看到汇编代码已转化为“.o”的二进制目标代码了。 ? 链接(Linking)。 系统把这些函数(printf)实现都被做到名为libc.so.6的库文件中去了,在没有特别指定时,gcc会到系统默认的有哪些信誉好的足球投注网站路径“/usr/lib”下进行查找,也就是链接到libc.so.6库函数中去,这样就能实现函数“printf”了,而这也就是链接的作用。完成了链接之后,gcc就可以生成可执行文件。 3.2 gcc编译器 3.2.2 gcc编译选项分析 (1)总体选项,右表: (2)告警和出错选项,右表: (3)优化选项 gcc可以对代码进行优化, 它通过编译选项“-On”来控制 优化代码的生成,其中n是一 个代表优化级别的整数。对 于不同版本的gcc来讲,n的取 值范围及其对应的优化效果可 能并不完全相同,比较典型的 范围是

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档