Linux基础PPT课件第十章交叉编译环境_第1页
Linux基础PPT课件第十章交叉编译环境_第2页
Linux基础PPT课件第十章交叉编译环境_第3页
Linux基础PPT课件第十章交叉编译环境_第4页
Linux基础PPT课件第十章交叉编译环境_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第九章内容回顾,嵌入式系统简介嵌入式系统服务器和客户端Subversion的基本操作,交叉编译环境,第十章,本章目标,嵌入式系统的开发环境是什么;能够熟练使用掌握交叉编译环境建立的方法;如何进行交叉编译。,本章结构,交叉开发简介,交叉编译环境建立,为什么需要交叉开发,交叉编译与链接,GNU交叉工具链,交叉开发环境的组成要素,开源GNU交叉开发环境,常用工具介绍,主要工具使用,交叉调试,交叉工具链展开,10.1.1为什么需要交叉开发,台式软件从“源码程序”到“机器码文件”的过程:,10.1.1为什么需要交叉开发,嵌入式软件从“源码程序”到“机器码文件”的过程:,10.1.1为什么需要交叉开发,需要交叉开发环境(CrossDevelopmentEnvironment)的支持是嵌入式应用软件开发时的一个显著特点交叉开发环境是指编译、链接和调试嵌入式应用软件的环境它与运行嵌入式应用软件的环境有所不同,通常采用宿主机目标机模式。,10.1.1为什么需要交叉开发,交叉开发环境,10.1.2交叉开发环境的组成要素,宿主机目标机交叉工具一个编译器,它是编译器工具链前端的一部分。一个汇编器,它是编译器工具链后端的一部分。一个链接器,它是编译器工具链后端的另一部分。用于处理可执行程序和库的一些基本工具,比如strings。,10.1.3交叉编译与链接,交叉编译器和交叉链接器是能够在宿主机上运行,并且能够生成在目标机上直接运行的二进制代码的编译器和链接器例如在基于ARM体系结构的gcc交叉开发环境中arm-linux-gcc是交叉编译器arm-linux-ld是交叉链接器。,10.1.4交叉调试,交叉调试(CrossDebug)又常常被称为远程调试(RemoteDebug),是一种允许调试器以某种方式控制目标机上被调试进程的运行方式,并具有查看和修改目标机上内存单元、寄存器以及被调试进程中变量值等各种调试功能的调试方式。,10.1.4交叉调试,嵌入式系统的特点:调试器和被调试进程运行在不同的机器上调试器通过某种通信方式与被调试进程建立联系,如串口、并口、网络、DBM、JTAG或者专用的通信方式。在目标机上一般会具备某种形式的调试代理,它负责与调试器共同配合完成对目标机上运行着的进程的调试。目标机可能是某种形式的系统仿真器,10.2开源GNU交叉开发环境,GNU目前已经推出的软件主要由Emacs功能强大的编辑环境,GCC性能优异的多平台的C,C+,Fortran编译器和其他40多种软件。其中GCC的成功为GNU带来了前所未有的影响。GCC是一种可以在11种硬件平台上编译出可执行程序的超级编译器,而且其执行效率更是惊人,与一般的编译器相比平均效率要高20%-30%。,10.3GNU交叉工具链,方法一分步编译和安装交叉编译工具链所需要的库和源代码,最终生成交叉编译工具链。方法二通过Crosstool脚本工具来实现一次编译生成交叉编译工具链方法三直接通过网上(.uk)下载已经制作好的交叉编译工具链。,构建交叉编译工具链方法,10.3.1交叉工具链展开,arm-linux-gcc-2.95.3.tgz2.95.3版本的armgcc交叉编译工具,一般我们使用它编译linux2.4.x版本的内核源码;安装#tarxvfzarm-linux-gcc-2.95.3.tgzC/arm-linux-gcc-3.4.1.tgz3.4.1版本的armgcc交叉编译工具,一般我们使用它编译linux2.6.x版本的内核源码;#tarxvfzarm-linux-gcc-3.4.1.tgzC/执行命令,将把arm-linux-gcc(版本2.95.3和3.4.1)分别安装到/usr/loca/arm/2.95.3和/usr/loca/arm/3.4.1目录,10.3.2常用工具介绍,10.3.3主要工具使用,arm-linux-gccarm-linux-ararm-linux-ranlibarm-linux-objdumparm-linux-readelfarm-linux-striparm-linux-copydump,本章总结,交叉开发简介,交叉编译环境建立,为什么需要交叉开发,交叉编译与链接,GNU交叉工具链,交叉开发环境的组成要素,开源GNU交叉开发环境,常用工具介绍,主要工具使用,交叉调试,交叉工具链展开,交叉编译环境中包括宿主,目标机的角色,arm-linux-gcc是交叉编译器arm-linux-ld是交叉链接器。,实验,任务1:交叉开发环境的建立任务2:交叉开发工具的使用,任务1,注意事项提示1:注意交叉工具链建立在哪个目录,任务2,注意事项提示1:注意交叉工具使用的命令参数,任务1,注意事项

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论