skyeye quick start
时间:2007-01-06 来源:hellofalcon
date:07/1/6
os: ubuntu 6.06(dapper)
gcc: 4.0.3
author:falcon
1.what is skyeye
Skyeye is a hardware simulator. you can use it to devlop embeded system, even if don't have the development board.
2.prepare
Download the following packages, and uncompress them.
if the postfix is .tar.gz, type "tar xzvf package.tar.gz" to uncompress it
if is .tar.bz2, type "tar xjvf package.tar.bz2" to uncompress it
XXX.sh is a script file, you don't need to uncompress it
[1] skyeye: hardware simulator
the newest version:skyeye-v1.2_Rel.tar.bz2
http://gro.clinux.org/projects/skyeye/
[2] arm-elf-tools-20030314.sh: cross compiler for arm-cpu
ftp://166.111.8.229/OS/Embedded/uclinux/pub/uClinux/arm-elf-tools
[3] uClinux-dist: linux-kernel and filesystem-image
ftp://166.111.8.229/OS/Embedded/uclinux/pub/uClinux/dist
[4] uclinux4skyeye: network support
http://gro.clinux.org/projects/skyeye/
3. install skyeye
Read the README file in the main directory of skyeye.
1) find the the restrictions.
As this version, it need:
[1] gcc version >=4.x.x
[2] require packages:gtk+-2.0-dev pkg-config atk-dev pango-dev freetype2-dev glib-dev x11-dev binutils-dev(bfd)
2) change directory to skyeye-v1, type "make" and execute it
3) type this command to test the skyeye
there will be some errors, so we need to fix it, we need a linux kernel , a filesystem, and a skyeye configration file, and also, we need a cross compiler to compile the binary code for arm-cpu.
4) copy the binary file skyeye to /usr/local/bin
4. install arm-elf-tools
type "arm-elf-gcc" to test it
5. use uClinux-dist to create OS and filesystem
1) Enter the directory uClinux-dist,and then
[1] create our own configration file
we need to have the config like this:
Exit this config menu, and say "yes" to save your new kernel configuration.
[2] build the dependencies
[3] build the image
2) we will find the binary kernel in ./linux-2.4.x, named linux
and the filesystem-image in ./image, named romfs.img
6. create a skyeye configuration
1) we can find an example of skyeye.conf in the README file in the main directory of skyeye:
2) change directory to uClinux-dist, and create the skyeye.conf file like above.
and then, type the command
if we want to do the skyeye experiment independently, we can copy out the kernel linux, the filesystem-image romfs.img.just make a new directory named skyeye-experiment, and copy the kernel linux, the filesytem romfs.img, the config file skyeye.conf into it. and change the string "file=images/romfs.img" in skyeye.conf to "file=./romfs.img". now, we can start the system just need to type: "skyeye -e linux -c skyeye.conf"
7. "hello, embeded linux!"
now, we can do a real experiment with skyeye
1) write a c program:
2) compile it for arm
3) we need to copy the hello to the filesytem romfs.img
but the filesytem is readonly, we need to use the genromfs comand to
create a romfs image from romfs.img, make sure you are root here.
Note: genromfs is a tool to create a romfs image, you can use "genromfs -h" to get help, this tool was installed with arm-elf-tools
8. support network
Read the document installguide.txt in uclinux4skyeye, you need to solve it yourself. because i cannot fix it, it's so depressed.
You can download the demovideo of skyeye from http://gro.clinux.org/projects/skyeye/, it's name is demovideo.tar.bz2, and also, there are more useful files in http://gro.clinux.org/projects/skyeye/
now, I can just see the tap0 device from host system when i use ifconifg command
what i have done like this:
1) recompile the uclinux with the first method of installguide.txt of uclinux4skyeye, and copy linux and romfs.img to skyeye-experiment/
2) add the following line to skyeye.conf:
3) insert the module tun.ko(or tun.o) to your host system:
4) change the user to root, and start the skyeye with uclinux
open a new terminal,type "ifconfig", i can find the tap0 device
but i cannot ping the skyeye from host,and cannot ping the host from the skyeye either
if you can fix the problem, would you tell me how?
reference
[1] skyeye
http://www.mcublog.com/blog/user1/9450/archives/2006/13179.html
[2] 使用SKYEYE 陈渝
http://blog.sina.com.cn/u/48c194c7010004he
[3] Ethernet communication between skyeye and Windows Host
http://lists.gro.clinux.org/pipermail/skyeye-developer/2006-October/001036.html
[4] The README files of every package
os: ubuntu 6.06(dapper)
gcc: 4.0.3
author:falcon
1.what is skyeye
Skyeye is a hardware simulator. you can use it to devlop embeded system, even if don't have the development board.
2.prepare
Download the following packages, and uncompress them.
if the postfix is .tar.gz, type "tar xzvf package.tar.gz" to uncompress it
if is .tar.bz2, type "tar xjvf package.tar.bz2" to uncompress it
XXX.sh is a script file, you don't need to uncompress it
[1] skyeye: hardware simulator
the newest version:skyeye-v1.2_Rel.tar.bz2
http://gro.clinux.org/projects/skyeye/
[2] arm-elf-tools-20030314.sh: cross compiler for arm-cpu
ftp://166.111.8.229/OS/Embedded/uclinux/pub/uClinux/arm-elf-tools
[3] uClinux-dist: linux-kernel and filesystem-image
ftp://166.111.8.229/OS/Embedded/uclinux/pub/uClinux/dist
[4] uclinux4skyeye: network support
http://gro.clinux.org/projects/skyeye/
3. install skyeye
Read the README file in the main directory of skyeye.
1) find the the restrictions.
As this version, it need:
[1] gcc version >=4.x.x
[2] require packages:gtk+-2.0-dev pkg-config atk-dev pango-dev freetype2-dev glib-dev x11-dev binutils-dev(bfd)
2) change directory to skyeye-v1, type "make" and execute it
3) type this command to test the skyeye
./binary/skyeye |
there will be some errors, so we need to fix it, we need a linux kernel , a filesystem, and a skyeye configration file, and also, we need a cross compiler to compile the binary code for arm-cpu.
4) copy the binary file skyeye to /usr/local/bin
sudo cp binary/skyeye /usr/local/bin |
4. install arm-elf-tools
sudo bash arm-elf-tools-20030314.sh |
type "arm-elf-gcc" to test it
5. use uClinux-dist to create OS and filesystem
1) Enter the directory uClinux-dist,and then
[1] create our own configration file
make menuconfig |
we need to have the config like this:
(GDB/ARMulator) Vendor/Product (X) GDB/ARMulator (linux-2.4.x) Kernel Version (X) linux-2.4.x (uClibc) Libc Version (X) uClibc |
Exit this config menu, and say "yes" to save your new kernel configuration.
[2] build the dependencies
make dep |
make |
2) we will find the binary kernel in ./linux-2.4.x, named linux
and the filesystem-image in ./image, named romfs.img
6. create a skyeye configuration
1) we can find an example of skyeye.conf in the README file in the main directory of skyeye:
cpu: arm7tdmi mach: at91 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=images/romfs.img 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 |
2) change directory to uClinux-dist, and create the skyeye.conf file like above.
and then, type the command
skyeye -e linux-2.4.x/linux -c skyeye.conf |
if we want to do the skyeye experiment independently, we can copy out the kernel linux, the filesystem-image romfs.img.just make a new directory named skyeye-experiment, and copy the kernel linux, the filesytem romfs.img, the config file skyeye.conf into it. and change the string "file=images/romfs.img" in skyeye.conf to "file=./romfs.img". now, we can start the system just need to type: "skyeye -e linux -c skyeye.conf"
shell> mkdir skyeye-experiment shell> cp uClinux-dist/linux-2.4.x/linux skyeye-experiment/ shell> cp uClinux-dist/images/romfs.img skyeye-experiment/ shell> cp uClinux-dist/skyeye.conf skyeye-experiment/ shell> vi skyeye.conf //change the "images/romfs.img" to "./romfs.img" shell> skyeye -e linux -c skyeye.conf |
7. "hello, embeded linux!"
now, we can do a real experiment with skyeye
1) write a c program:
/* hello.c */ |
2) compile it for arm
arm-elf-gcc -Wl,-elf2flt -o hello hello.c |
3) we need to copy the hello to the filesytem romfs.img
but the filesytem is readonly, we need to use the genromfs comand to
create a romfs image from romfs.img, make sure you are root here.
shell> sudo -s shell> mkdir /media/romfs shell> mount -o loop romfs.img /media/romfs shell> mkdir romfs shell> cp -rf /media/romfs/* romfn/ shell> cp hello romfs/bin shell> genromfs -f boot.rom -d romfs shell> vi skyeye.conf //modify the "./romfs.img" to "./boot.rom" to "file=./boot.rom" shell> skyeye -e linux -c skyeye.conf ... /> /bin/hello hello, embeded linux! |
Note: genromfs is a tool to create a romfs image, you can use "genromfs -h" to get help, this tool was installed with arm-elf-tools
8. support network
Read the document installguide.txt in uclinux4skyeye, you need to solve it yourself. because i cannot fix it, it's so depressed.
You can download the demovideo of skyeye from http://gro.clinux.org/projects/skyeye/, it's name is demovideo.tar.bz2, and also, there are more useful files in http://gro.clinux.org/projects/skyeye/
now, I can just see the tap0 device from host system when i use ifconifg command
what i have done like this:
1) recompile the uclinux with the first method of installguide.txt of uclinux4skyeye, and copy linux and romfs.img to skyeye-experiment/
2) add the following line to skyeye.conf:
net: type=rtl8019, mac=0:4:3:2:1:f, ethmod=tuntap, hostip=10.0.0.1 |
3) insert the module tun.ko(or tun.o) to your host system:
sudo insmod /lib/modules/`uname -r`/kernel/drivers/net/tun.ko |
4) change the user to root, and start the skyeye with uclinux
shell> sudo -s shell> syseye -e linux -c skyeye.conf |
open a new terminal,type "ifconfig", i can find the tap0 device
but i cannot ping the skyeye from host,and cannot ping the host from the skyeye either
if you can fix the problem, would you tell me how?
reference
[1] skyeye
http://www.mcublog.com/blog/user1/9450/archives/2006/13179.html
[2] 使用SKYEYE 陈渝
http://blog.sina.com.cn/u/48c194c7010004he
[3] Ethernet communication between skyeye and Windows Host
http://lists.gro.clinux.org/pipermail/skyeye-developer/2006-October/001036.html
[4] The README files of every package
相关阅读 更多 +