搭建arm交叉编译环境.doc

上传人:M****1 文档编号:551033579 上传时间:2023-05-23 格式:DOC 页数:11 大小:1.26MB
返回 下载 相关 举报
搭建arm交叉编译环境.doc_第1页
第1页 / 共11页
搭建arm交叉编译环境.doc_第2页
第2页 / 共11页
搭建arm交叉编译环境.doc_第3页
第3页 / 共11页
搭建arm交叉编译环境.doc_第4页
第4页 / 共11页
搭建arm交叉编译环境.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《搭建arm交叉编译环境.doc》由会员分享,可在线阅读,更多相关《搭建arm交叉编译环境.doc(11页珍藏版)》请在金锄头文库上搜索。

1、搭建arm交叉编译环境V0.1ALL Rights Reserved, Copyright FUJITSU LIMITED 2013改版履历修改日期修改原因版本修改者2013/2/27初版制成V0.1WengFan目 录一 交叉编译器环境创建3二 使用交叉编译工具编译内核6三 使用交叉编译工具制作根文件系统8四 使用qemu运行10一 交叉编译器环境创建 编译器名字:codesourcery 下载地址:ftp:XXXX: arm-2011.03-41-arm-none-linux-gnueabi.bin运行可执行文件arm-2011.03-41-arm-none-linux-gnueabi.b

2、in。命令:./ arm-2011.03-41-arm-none-linux-gnueabi.bin输入Y。接受许可协议。输入回车键,选择默认的配置。输入回车键,会默认安装到用户目录下的CodeSourcery/Sourcery_G+_Lite位置。这里建议选择输入回车选择默认配置。输入回车键,会默认在用户目录CodeSourcery/Sourcery_G+_Lite_for_ARM_GNU_Linux创建链接。这里建议选择输入回车选择默认配置。输出回车键确认安装信息。输入回车键开始安装。安装过程中的提示信息:输入回车键安装完成。二 使用交叉编译工具编译内核 测试内核版本:linux-2.6.

3、32.27 下载地址:http:/www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.32.27.tar.bz2按照以下步骤完成编译内核工作:1. 解压下载的kernel源码文件linux-2.6.32.27.tar.bz2。 命令:tar xvf linux-2.6.32.27.tar.bz2 2. 进入到源码的根目录下。 命令:cd linux-2.6.32.273. 配置编译内核的configue文件。命令:make ARCH=arm CROSS_COMPILE=arm-linux- versatile_defconfig4. 通过kernel界

4、面配置内核选项。命令:make ARCH=arm CROSS_COMPILE=arm-linux- menuconfig输入命令会会弹出kernel配置界面,进入到kernel Features选项配置界面,如下图所示:选择Use the ARM EABI to compile the kernel ,如下图所示:配置完成之后连续输入两次ESC键退出保存即可。5. 导入编译好的交叉编译工具目录。export PATH=/home/wengf/CodeSourcery/Sourcery_G+_Lite/bin:$PATH6. 编译内核命令:make ARCH=arm CROSS_COMPILE=

5、arm-none-linux-gnueabi-7. 生成内核编译完成之后在linux-2.6.32.17/arch/arm/boot/目录下的zImage为编译的内核文件。三 使用交叉编译工具制作根文件系统1. 准备busybox源码busybox版本:busybox-1.18.4.tar.bz2下载地址:http:/ 解压busybox源码命令:tar xvf busybox-1.18.4.tar.bz23. 配置busybox编译选项进入到busybox根目录。cd busybox-1.18.4配置选项命令:make menuconfig输入命令后,进入到图形化配置界面: 按如下进行配置B

6、usybox Settings - | Build Options - | () Cross Compiler prefix (NEW) | 填写arm-none-linux-gnueabi-如下图所示:配置完成之后连续输入两次ESC键退出即可。5. 导入编译好的交叉编译工具目录。export PATH=/home/wengf/CodeSourcery/Sourcery_G+_Lite/bin:$PATH6. 编译命令:make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-7. 安装命令:make ARCH=arm CROSS_COMPILE=a

7、rm-none-linux-gnueabi- install输入命令后,会将编译好的busybox安装到busybox-1.18.4/_install目录下。8. 创建根文件系统目录和文件进入到编译好的busybox的_install目录。命令:cd _install创建生成根文件系统的shell脚本。命令: touch mkroot.shchmod 755 mkroot.sh在mkroot.sh脚本中输入以下内容: 1 #!/bin/sh 2 mkdir etc 3 cd etc 4 touch fstab 5 echo proc /proc proc defaults 0 0 fstab

8、6 touch inittab 7 echo :sysinit:/etc/init.d/rcS inittab 8 echo console:askfirst:-/bin/sh inittab 9 echo :ctrlaltdel:/bin/umount -a -r inittab 10 touch profile 11 echo echo -n Processing /etc/profile. profile 12 echo PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/u-updater profile 13 echo LD_LIBRARY_P

9、ATH=/lib:/usr/lib profile 14 echo export $PATH $LD_LIBRARY_PATH profile 15 echo echo Done profile 16 mkdir init.d 17 touch init.d/rcS 18 echo #! /bin/sh init.d/rcS 19 echo /bin/mount -a init.d/rcS 20 chmod +x init.d/rcS 21 cd . 22 cp $HOME/CodeSourcery/Sourcery_G+_Lite/arm-none-linux-gnueabi/libc/li

10、b . -rf 23 mkdir proc 24 find . | cpio -c -o ./initrd.cpio注意:上述脚本中第22行是拷贝交叉编译的lib库。如果交叉编译器没有安装在默认位置,请手动更改lib库的位置。运行mkroot.sh脚本后,会在busybox的根目录下生成根文件系统文件initrd.cpio。四 使用qemu运行编译好内核文件zImage与根文件系统initrd.cpio之后,就可以使用qemu-system-arm来启动一个简单的系统了。命令如下:qemu-system-arm -M versatilepb -kernel zImage -initrd initrd.cpio -m 128M -append console=ttyAMA0 root=/dev/ram rdinit=/linuxrc -nographic2

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号