第17讲-交叉编译.ppt

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第十七讲 交叉编译 目录 交叉编译基本概念 交叉编译基本概念 交叉编译基本概念 目录 交叉编译环境的建立 交叉编译环境的建立 交叉编译环境的建立 交叉编译环境的建立 交叉编译环境的建立 交叉编译环境的建立 目录 示例程序 示例程序 示例程序 目录 课后练习 * LOGO * LINUX 一、交叉编译基本概念 二、交叉编译环境的建立 三、示例程序 四、课堂练习 五、课后作业 LINUX 1. 什么是交叉编译? 简单地说,就是在一个平台上生成另一个平台上的可执行代码。 所谓平台,实际上包含两个概念:体系结构(Architecture)(硬件)、操作系统(Operating System)(软件)。   同一个体系结构可以运行不同的操作系统; 同一个操作系统也可以在不同的体系结构上运行。 举例来说,我们常说的x86 Linux平台实际上是Intel x86体系结构和Linux for x86操作系统的统称;而x86 WinNT平台实际上是Intel x86体系结构和Windows NT for x86操作系统的简称。 2. 为什么要交叉编译? 一个经常会被问到的问题就是,“既然我们已经有了主机编译器,那为什么还要交叉编译呢?” 1.有时是因为目的平台(2440板子)上不允许或不能够安装我们所需要的编译器,而我们又需要这个编译器的某些特征; 2.有时是因为目的平台上的资源贫乏,无法运行我们所需要编译器; 3.有时又是因为目的平台还没有建立,连操作系统都没有,根本谈不上运行什么编译器。 3. 交叉编译常用英文单词 host 主机平台。 target 目的平台。 perfix 交叉编译器的安装位置。 一、交叉编译基本概念 二、交叉编译环境的建立 三、示例程序 四、课堂练习 五、课后作业 LINUX 1. 交叉编译环境组成 基于linux操作系统的应用开发环境一般是由目标系统硬件(开发板)和宿主pc机所构成。 1.目标硬件开发板用于运行操作系统和系统应用软件。 2.目标板所用到的操作系统的内核编译、应用程序的开发和调试则需要通过宿主pc机来完成(所以称为交叉编译)。 3.目标板和宿主机(PC)之间一般通过串口,并口或以太网接口建立连接关系。 2.安装宿主机(PC)的软件 1.安装nfs服务器 sudo apt-get install nfs-kernel-server portmap gedit /etc/exports /home/study/study *(rw) sudo /etc/init.d/nfs-kernel-server restart 注:文件夹的访问权限要设置成组和其它用户都读写的 NFS为network file system 的简称,最早由sun公司开发,一般NFS广泛应用在集群服务器上,他的最大特点是可以通过网络让不同的机器,不同的操作系统可以彼此的共享文件,所以它可以看作一个简单的文件服务器。 2.安装ssh,用于在linux和window传输文件 Sudo apt-get install openssh-server 3.安装C/C++编译器build-essential Sudo apt-get install build-essential 4.安装语法,词法分析器 Sudo apt-get install bison flex 5.安装C函数库的man手册 Sudo apt-get install mandev 6.解压ncurses,并安装,没有它,make menuconfig会出错 Tar zxvf ncurses.tar.gz cd ncurses-5.6 ./configure –with-shared –prefix=/usr make make install 3.安装交叉编译工具 1、把你的编译工具(arm-linux-gcc-3.4.5-glibc-2.3.6.tar.bz2)放置某目录。 解压:tar -jxvf arm-linux-gcc-3.4.5-glibc-2.3.6.tar.bz2 会在当前目录产生上述包的解压文件,在这个目录里面找到bin目录,把这个bin目录的绝对路径记录下载。 2、添加交叉编译工具进入系统的环境变量: Sudo gedit /etc/environment 在PATH后面加入你的交叉编译路径 接着重启或者注销一下就可以了。 重启完成后打开终端输入arm-linux-gcc -v 看看有没有输出相关的版本信息。 4.常用交叉编译工具介绍 $arm-linux- arm-linux-add

文档评论(0)

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

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

1亿VIP精品文档

相关文档