Wednesday, January 3, 2007

How to use netcard simulations of SkyEye in Windows

SkyEye can offer netcard simulations in Linux by loading tun.o module. But how can it offer netcard simulations in Windows?
There are always two ways to use SkyEye in Windows. The first way is in Cygwin environment, which offers a Linux virtual environment on Windows. But it seems that there is no device in Cygwin environment. So it is hard to simulate netcard by it.
The second way is to compile SkyEye in MinGW environment. After that, SkyEye can run without any dlls in Windows. As it runs in no dependce of other virtual machine, so it speeds up the simulations. Then, a question come out, how can SkyEye compiled by MinGW simulate netcard?
Through analyzing the source code of SkyEye, we can find something useful in Skyeye_net.c. In MinGW environment, SkyEye can offer netcard simulations by installing TAP-WIN32 device, which supplied as a groupware in VPN install packages.
The installing steps is as follows:
1. Download OpenVPN install package, just need to choose to install TAP-WIN32 groupware in install guide.
2. After that, you will find there is a new network connection shows on desktop.Which displays TAP-WIN32 Adapter.
3. Double click the network connection you are using. You will find there is a properties setting about share of internet connection in properties->High. Choose both of the options. Select the TAP-WIN32 device in home network connection. Then click OK.
4. Now you can find that the IP and MAC of TAP-WIN32 connection is set automatically.
5. Then you can run the testsuite supplied by SkyEye, and use the netcard simulations of SkyEye.

Monday, December 25, 2006

How to build SkyEye staticly

I resolved the problem occurred yesterday. Which can’t be builded successfully in skyeye-v1.2 Rel. The problem is the WinRAR did a bad job and decompressed the compressed files in a wrong state. I got a new copy from the Sourcefore this morning, builded it all right.

There is also a problem today, that is how to build SkyEye staticly? Acorrding to the README.txt, just need to run make STATIC=1. But I met a link error as follows:

/usr/bin/ld: cannot find -lgtk-x11-2.0
collect2: ld returned 1 exit status
make: *** [binary/skyeye] Error 1


That error means there isn’t gtk-x11-2.0.a in the /lib, I searched it, of course it isn’t existed. How can I get it? How many libs would I need?

After readed the README again, I found that:

4 required packages:

gtk+-2.0-dev pkg-config atk-dev pango-dev freetype2-dev glib-dev x11-dev binutils-dev(bfd)


That means I need to find the source of gtk, atk and so on. And Build them in a static way to get .a file. Then I can use make STATIC=1 command to make a staticly SkyEye.

Although I found the way to make it staticly, I would not to try it at once, after all, it may take much time. I think I’ll do it when I need them. haha

Overview of Skyeye

SkyEye is an Open Source Simulator, which simulates series ARM architecture based microprocessors and Blackfin DSP Processor. Users can run Operating Systems such as Linux, uCLinux, uC/OS-II for ARM and can analyze or debug in source level.

By reason of the need of client, we’ll integrate a ARM Instruction Simulator to the LambdaPRO. May be it will be a open source one, or a commerce one. Of course, the best choice is to select a open source simulator.

I studied Skyeye several Months ago, for I am a poor boy. There isn’t enough money to buy a experimental board for myself. Now it works, haha.

After downloaded the latest version of skyeye(skyeye-v1.2_Rel), I tried to run make. Oh god, it made error as follows:

make: *** No rule to make target `binary/dev_lcd_ep7312.o', needed by `binary/libdev.a'. Stop

I tried another make as “make NO_LCD=1”, that works, a binary file skyeye.exe was made by the linker. Then I understood that there may be something wrong with the latest version of skyeye. BUG, BUG, waha , I committed it to the sourceforge.net, and the continued my work.

After an hour’s work, I had run our own os on skyeye successfully, that’s a simple application with three tasks print some messages to the serial port.

En, a wonderful work today.

Saturday, December 23, 2006

My English Blog Started!

Hello, I'm Leon. This is my first English blog ! I'll write the technical articles all in English, focus in the software deveopment of embeded system.
This blog can be a very good supplement after work, so I will go on to write it everyday.
Of course, your suggestion expected :)