下载此文档

嵌入式linux入门.doc


文档分类:IT计算机 | 页数:约38页 举报非法文档有奖
1/38
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/38 下载此文档
文档列表 文档介绍
嵌入式 linux 入门本文由 gaochaoran2009 贡献 doc 文档可能在 WAP 端浏览体验不佳。建议您优先选择 TXT ,或下载源文件到本机查看。高手进阶学会做嵌入式 Linux 操作系统发布时间: 06:27 来源: 赛迪网技术社区作者:sixth 做一个嵌入式 Linux 系统究竟要做哪些工作做一个嵌入式 Linux 系统究竟需要做哪些工作? 也就是本文究竟要讲述哪些内容? 我先介绍一个脉络, 可以做为我们后面工作的一个总的提纲: 第一步, 建立交叉编译环境没有交叉开发经验的读者, 可能一时很难接受这个概念. 首先,要明白两个概念: 一般我们工作的机器, 称为开发机,主机; 我们制作好的系统将要放到某台机器, 如手机或另一台 PC机, 这台机我们称为目标主机. 我们一般开发机上已经有一套开发工具, 我们称之为原生开发套件, 我们一般就是用它们来写程序, 那么, 那什么又是交叉编译环境呢? 其实一点也不神秘, 也就是在开发机上再安装一套开发工具, 这套开发工具编译出来的程序, 如内核, 系统工作或者我们自己的程序, 是放在目标主机上运行的. 那么或许有初学者会问, 直接用原生开发工具为目标主机编译程序不就完了? 至少我当初是这么想的. 一般来说, 我们的开发机都是 X86 平台, 原生开发套件开发的工具, 也针对 X86 平台, 而我们的目标主机可能是 PowerPC,IXP,MIPS ……所以,我们的交叉编译环境是针对某一类具体平台的. 一般来讲, 交叉开发环境需要二进制工具程序, 编译器,C 链接库, 嵌入式开发常用的这三类软件是: Binutils Gcc uClibc 当然,GNU 包含的工具套件不仅于此, 你还要以根据实际需要,进行选择第二步, 编译内核开发工具是针对某一类硬件平台, 内核同样也是. 这一步, 我们需要用第一步中建立的工具, 对内核进行编译, 对于有内核编译经验的人来说, 这是非常简单的; 第三步, 建立根文件系统也就是建立我们平常看到的 bin,dev,proc ……这一大堆目录, 以及一些必备的文件; 另外, 我们还需要为我们的目标系统安装一些常用的工具软件,如 ls,ifconfig ……当然, 一个办法是找到这些工具的源代码, 用第一步建立的交叉编译工具来编译, 但是这些软件一是数量多, 二是某些体积较大, 不适合嵌入式系统, 这一步, 我们一般都是用 busybox 来完成的, 包括系统引导软件 init; 最后, 我们为系统还需要建立初始化的引导文件,如 inittab ……第四步, 启动系统在这一步, 我们把建立好的目标, 文件, 程序, 内核及模块全部拷贝到目标机存储器上, 如硬盘. 然后为系统安装 bootloader, 对于嵌入式系统, 有许多引导程序可供我们使用. 不过它们许多都有硬件平台的限制. 当然, 如果你是工作在 X86, 可以直接用 lilo 来引导,事实上, 本文就是采用的 lilo. 做到这一步, 将目标存储设备挂上目标机, 如果顺利, 就可以启动系统了. 当然, 针对某些特别的平台, 不能像硬盘这样拷贝了, 需要读卡器, 烧录……但是基本的方法是相通的! 第五步, 优化和个性化系统通过前四步, 我们已经得到了一个可以正常工作的系统. 在这一步里, 就是发挥你想像的时候了……本文的工作环境项目根目录/home/kendo/project >; 我将它指定至 PATH:$PRJROOT 子目录及说明目录内容 bootloader 目标板的引导加载程序,如 lilo 等 build-tools 建立交叉编译平台的工具源码 debug 调试工具及所有相关包 doc 项目中用到的所有文档 images 编译好的内核映像, 以及根文件系统 kernel 各个版本的 Linux 内核源码 rootfs 制作好的根文件系统 sysapps 目标板将要用到的系统应用系统, 比如 thttpd,udhcpd 等 tmp 存放临时文件 tools 编译好的跨平台开发工具链以及 C 链接库工作的脚本#!/usr/bin export PROJECT= export PRJROOT=/home/${PROJECT} export TARGET=i386-linux export PREFIX=${PRJROOT}/tools export TARGET_PREFIX=${PREFIX}/${TARGET} export PATH=${PREFIX}/bin:/bin:/sbin:/usr/bin:/usr/sbi n cd $PRJROOT 第二章建立交叉编译环境在 CU 中发表的另一篇同名的贴子里, 我讲述了一个全手工创建交叉编译环境的方法. 目前,

嵌入式linux入门 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数38
  • 收藏数0 收藏
  • 顶次数0
  • 上传人xxj16588
  • 文件大小0 KB
  • 时间2016-06-09
最近更新