- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
内核编译
2.4版本嵌入式Linux操作系统内核编译2.6版本嵌入式Linux操作系统内核编译0102内核编译
2.4版本嵌入式Linux操作系统内核编译1构建ARMLinux系统的前提是配置好交叉开发环境,接下来的工作包括三个步骤:移植vivi、内核以及文件系统。
系统交叉编译首先交叉编译BootLoader。准备好vivi源码,修改Makefile文件,指定目标体系结构为arm,交叉编译工具前缀为arm-linux-,注意工具链的路径要设置正确;然后按照目标板的实际情况设置vivi运行的硬件地址;交叉编译vivi。运行makeclean命令清除中间文件,然后运行makemenuconfig命令对vivi进行配置,最后执行make命令,当出现提示“^-^Thevivibootimagefileis:……/vivi/vivi”(省略号代表用户实际安装vivi源码的目录)时,交叉编译完成。
系统交叉编译下一步需要配置编译内核源码。准备miziLinux源码,修改Makefile文件,把内核运行的目标平台改为2410处理器,修改交叉编译器前缀为arm-linux-,注意工具链的路径要设置正确;按照目标板RAM、Flash的实际情况配置硬件地址;配置串口,设置正确的波特率。本阶段依次运行以下命令:makemrproper、makexconfig、makedep、makeclean、makezImage,当出现“^-^Thekernelimagefileis:……/kernel/arch/arm/boot/zImage”提示信息(省略号代表用户实际安装内核源码的目录)时,表示内核已经交叉编译完成。内核编译具体过程可参阅相关文档,在此不多做介绍。
系统交叉编译最后一个步骤是制作文件系统。首先创建根目录,在其中新建bin、dev、etc、usr、lib、sbin等目录;下载BusyBox源码,配置、交叉编译和安装BusyBox,注意目标平台指定为arm、交叉编译器前缀指定为arm-linux-,注意工具链的路径要设置正确,编译完成后的可执行文件安装路径要设置正确;复制需要的C库到文件系统目录树中;由于内核启动后会读取一系列配置文件,包括/etc/profile、/linuxrc、/usr/etc/rc.local、/etc/init.d/rcS等,完成诸如环境变量设置等内容,因此需要编写这些配置文件;上述工作都完成之后,需要使用文件系统生成工具mkcramfs来生成文件系统的镜像文件
镜像下载使用仿真器、FlashProgrammer把vivi、内核和文件系统下载到Flash中,重新启动目标机,如果能够顺利进入Linux,表示操作成功。需要注意的是,根据目标机系统使用NorFlash或者NandFlash的不同情况,ARMLinux系统构建细节稍有差别。
2.6版本嵌入式Linux操作系统内核编译2S3C2440处理器与S3C2410处理器一样采用ARM920T架构,但是具有更高的主频、更丰富的接口,支持更大的NandFlash,可为手持设备与应用提供低功耗、高性能的微控制器解决方案。本小节介绍如何在S3C2440处理器平台上构建2.6内核版本的嵌入式Linux操作系统。
环境配置内核编译需要在Linux系统下进行,下载内核源码文件,将其复制到宿主机Linux系统,然后解压备用。文件系统采用YAFFS2,下载YAFFS2源文件,将其复制到宿主机Linux系统下解压备用。由于目标机为ARM架构,所以宿主机Linux系统中需要配置交叉编译工具链,参照3.2节中交叉编译工具链的构建方法,进行安装。宿主机环境配置完成后便可以进行内核的配置与编译。制作文件系统YAFFS2需要命令行工具mkyaffs2image,需先下载安装,以便制作文件系统映像文件。
内核配置和内核编译将需要移植的linux-2.6.32.2源码复制到Linux系统中,此版本的Linux内核支持S3C2440,并支持多种分辨率的LCD显示屏,简化了配置过程。在命令行下运行makemenuconfig命令进行内核配置,可在此界面中进行内核个性化定制。主要的配置选项有:CPU、LCD、触摸屏、USB鼠标和键盘、U盘、万能驱动USB摄像头、CMOS摄像头、网卡、USB无线网卡驱动、音频驱动、SD/MMC卡、看门狗驱动、LED灯、按键驱动、PWM控制蜂鸣器驱动、AD转换驱动、串口驱动、RTC实时时钟驱动、I2C-EEPROM驱动、YAFFS2文件系统、EXT2/VFAR/NFS/FAT32文件系统配置等。配置完成后,保存设置退出。
内核配置和内核编译在编译内核之前,必须保证所有的配置正确,否则编译出的内核文件也是不可用的。
文档评论(0)