当前时区 GMT+8, 现在时间是 2008-5-17 13:34 游客: 注册 登录 仅登录论坛 | 搜索 帮助


标题: 配置ARM Linux中遇到的问题
albert198511
新手上路
Rank: 1



UID 246711
精华 0
积分 28
帖子 56
阅读权限 10
注册 2008-2-12
状态 离线
发表于 2008-2-19 16:28  资料  短消息  加为好友 
配置ARM Linux中遇到的问题

我按照陈渝老师《源码开放的嵌入式系统软件分析与实践》书上的步骤进行移植,当到最后一步run的时候 只走了一步就不动了 在网上也查了很多资料 有几处不是很明白,主要是关于p247页之后的busybox的(软件所用版本都是书中提到的),具体如下:


按照书中内容,建立测试目录mkdir /root/arm_skyeye

安装交叉编译环境
cd /usr/local
mkdir arm
cd arm
cp /root/cross-2.95.3.tar.bz2 ./
tar zxf cross-2.95.3.tar.bz2
export PATH=$PATH:/usr/local/arm/2.95.3/bin

配置ARM Linux
cd /root
mkdir armlinux
cd armlinux
cp /linux-2.4.18.tar.bz2 ./
tar jxf linux-2.4.18.tar.bz2
cd ..
cp /patch-2.4.18-rmk7 linux/
cd linux
patch -p1 < patch-2.4.18-rmk7
make mrproper                                     //这几步自己查资料整的 因为没有书中提到的安装包 不知道是不是正确


vi Makefile
添加:
ARCH :=arm
CROSS_COMPILE = /usr/local/arm/2.95.3/bin/arm-linux-

make menuconfig                 //按照书中的配置
make clean
make dep
make

这里会遇到两个问题
1.出现video的问题(实际操作中就会知道)
make menuconfig
取消Console drivers中的VGA
2.出现key_maps问题
cd drivers/char
vi Makefile
在obj -y += 添加defkeymap.o

cd ../../
make clean
make dep
make

ls

出现vmlinux

cp vmlinux /root/arm_skyeye
cd /root
mkdir /tmp/target
mkdir busybox
cd busybox

拷贝busybox-0.60.5.tar.gz到此目录 //书中提到的busybox版本有误

gunzip busybox-0.60.5.tar.gz
tar xvf busy-0.60.5.tar

cd busy-0.60.5
vi Makefile //改DOSTATIC为true

vi init.c //改为#define INIT_SPCIPT"/etc/inittab"

make TARGET_ARCH=arm CROSS=/usr/local/arm/2.95.3/bin/arm-linux- PREFIX=/tmp/target
make TARGET_ARCH=arm CROSS=/usr/local/arm/2.95.3/bin/arm-linux- PREFIX=/tmp/target all install
//自己总结的 不知道是否正确。。。

ls /tmp/target 出现书中提到的文件

cd /root
mkdir /mnt/img
dd if=/dev/zero of=initrd bs=2048k count=1 //我给增加了大小
mkezfs -F -m0 initrd
mount -t ext2 -o loop initrd /mnt/img
cp -Rd /tmp/target/* /mnt/img

cd /mnt/img
mkdir dev etc proc mnt tmp var
chmod 755 dev etc bin mnt tmp var
chmod 555 proc

cd dev/                                
//按照书中建立设备文件总是提示:没有空间 我就用以下方法依次拷贝了书中ll之后列出的那13个设备文件
cp -a /dev/console ./   

cd /mnt/img/etc

vi inittab
vi rc
vi fstab

umount /mnt/img
cp /root/initrd /root/arm_skyeye/

cd /root/arm_skyeye

vi skyeye.conf

#skyeye config file sample
cpu: arm720t

mach: ep7312

mem_bank: map=I, type=RW, addr=0x80000000, size=0x00010000
mem_bank: map=M, type=RW, addr=0xc0000000, size=0x00200000, file=./initrd
mem_bank: map=M, type=RW,  addr=0xc0200000, size=0x00200000
mem_bank: map=M, type=RW, addr=0xc0400000, size=0x01000000

log: logon=0, logfile=/tmp/test.log, start=5000000, end=6000000

skyeye

(skyeye)file vmlinux
(skyeye)target sim
(skyeye)load
(skyeye)run
Starting program: /root/arm_skyeye/vmlinux

在第一句之后就不动了 不知道为什么? 应该如何更改?

还望各位高手指点赐教啊!!! 谢谢!!!!

顶部
ksh
高级会员
Rank: 4


UID 92875
精华 1
积分 1447
帖子 736
阅读权限 50
注册 2004-2-4
来自 China
状态 离线
发表于 2008-2-19 17:49  资料  短消息  加为好友  添加 ksh 为MSN好友 通过MSN和 ksh 交谈

顶部
 


Powered by Discuz! 5.5.0  © 2001-2007 Comsenz Inc.
清除 Cookies - 联系我们 - 中国Linux公社 - WAP