这一周我都一直在努力地学习和安装搭建skyeye uclinux以及ucosII平台,今天终于有结果了,所以很兴奋,现在要把所有的安装过程凭着记忆写下来...................
原来我一直在安装gcc编译器,但是老是出现些莫名其妙的问题,因为不是版本不兼容的问题就是各个包之间的倚赖关系太强,所以老是安装不成功.后来干脆直接从安装盘上面把所有的包安装了.解决了gcc编译器的问题,现在轮到skyeye的安装了.我skyeye包安装在/tmp/skyeye/目录下,包文件是:skyeye-v0.2.6什么的,要是再安装一遍的话我不会把她安装到这个目录下.我的ucosII安装在根目录下 / .包的名字是:ucosii4skyeye-v1.8.tgz.各个包的安装过程直接读她的readme文件就可以了.我的uclinux安装在siuwash目录下,/siuwash/uclinux-dist,同样看她的readme文件就可以了结安装过程了.最后如果/siuwash/uclinx-dist/images下有文件romfs.img的话那就表示你编译安装成功了.在uclinux-dist目录下新建一个skyeye.conf文件.内容如下:
cpu: arm7tdmi
mach: at91
mem_num: 7 //这一行对我来说必需要,原因我也不清楚,因为下面有7个内存段吧!!!
mem_bank: map=M, type=RW, addr=0x00000000, size=0x00004000
mem_bank: map=M, type=RW, addr=0x01000000, size=0x00400000
mem_bank: map=M, type=R, addr=0x01400000, size=0x00400000, file=./boot.rom
mem_bank: map=M, type=RW, addr=0x02000000, size=0x00400000
mem_bank: map=M, type=RW, addr=0x02400000, size=0x00008000
mem_bank: map=M, type=RW, addr=0x04000000, size=0x00400000
mem_bank: map=I, type=RW, addr=0xf0000000, size=0x10000000
这个很重要.尤其我在这一步出了不少的问题,耽误了我一天时间来查清楚是什么原因.
按照书本上说的还论坛上说的就是没有men_num:7那一行,他们运行就是没问题,可是对我来说因为少了这一行让我的信心受了不小的打击,因为当你快要接近成功的时候却冒出这样的问题的确让人很恼火,而且书上还有论坛上都没有把这样的问题提出来,叫我一个菜鸟怎么解决讷?当然了,最后还是借助网路解决了这个问题......当然马上又遇到了另外一个烦人的问题.过了一个晚上才得以解决.最后指令如下:
进入siuwash/uclinux-dist目录下,还有差点忘记了要先对boot.rom进行链接操作.因为我的skyeye.conf文件第六行后面用的是boot.rom所以要链接:
#ln -s images/romfs.img boot.rom
这个时候就可以来运行还试uclinux内核了 ...............
#cd /siuwash/uclinux-dist/
#skyeye linux-2.4.x/linux
>target sim
>load
>run
到这里,你就可以看到
Starting program: /siuwash/uClinux-dist/linux-2.4.x/linux
Linux version 2.4.20-uc0 () (gcc version 2.95.3 20010315 (release)(ColdFire patches - 20010318 from patches)) #1
一 10月 15 20:10:09 CST 2007
Processor: Atmel AT91M40xxx revision 0
Architecture: EB01
On node 0 totalpages: 1024
zone(0): 0 pages.
zone(1): 1024 pages.
zone(2): 0 pages.
Kernel command line: root=/dev/rom0
Calibrating delay loop... 12.97 BogoMIPS
Memory: 4MB = 4MB total
Memory: 3020KB available (800K code, 178K data, 40K init)
Dentry cache hash table entries: 512 (order: 0, 4096 bytes)
Inode cache hash table entries: 512 (order: 0, 4096 bytes)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 1024 (order: 0, 4096 bytes)
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
Starting kswapd
Atmel USART driver version 0.99
ttyS0 at 0xfffd0000 (irq = 2) is a builtin Atmel APB USART
ttyS1 at 0xfffcc000 (irq = 3) is a builtin Atmel APB USART
Blkmem copyright 1998,1999 D. Jeff Dionne
Blkmem copyright 1998 Kenneth Albanowski
Blkmem 1 disk images:
0: 1400000-14A4BFF [VIRTUAL 1400000-14A4BFF] (RO)
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 512 bind 512)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
VFS: Mounted root (romfs filesystem) readonly.
Shell invoked to run file: /etc/rc
Command: hostname GDB-ARMulator
Command: /bin/expand /etc/ramfs.img /dev/ram0
Command: mount -t proc proc /proc
Command: mount -t ext2 /dev/ram0 /var
Command: mkdir /var/tmp
Command: mkdir /var/log
Command: mkdir /var/run
Command: mkdir /var/lock
Command: cat /etc/motd
Welcome to
____ _ _
/ __| ||_|
_ _| | | | _ ____ _ _ _ _
| | | | | | || | _ \| | | |\ \/ /
| |_| | |__| || | | | | |_| |/ \
| ___\____|_||_|_| |_|\____|\_/\_/
| |
|_|
GDB/ARMulator support by <>
For further information check:
Execution Finished, Exiting
Sash command shell (version 1.1.1)
心情真的是很爽啊。。。。。哈哈哈哈 .................................
...............................................................
..........................................2007年10月17号11:03:15
阅读(1319) | 评论(0) | 转发(0) |