Ubuntu下用skyeye运行OKL4的一些过程记录:
一、下载需要的组件
1、skyeye-1.3.0_rc1.tar: http://nchc.dl.sourceforge.net/project/skyeye/skyeye/skyeye-1.3.0_rc1.tar.gz
2、okl4_3.0.tar.gz:http://wiki.ok-labs.com/downloads/release-3.0/
3、交叉编译工具:arm-linux-gnueabi-4.2.4.tar.gz、arm-linux-3.4.4.tar.bz2 http://wiki.ok-labs.com/downloads/release-3.0/
4、skyeye-conf下载:http://wiki.ok-labs.com/downloads/release-3.0/
二、编译:假定系统根目录为:/home/fanyl/,用户为:fanyl
1、skyeye-1.3.0_rc1.tar:
1)、解压:tar zxvf skyeye-1.3.0_rc1.tar
2)、cd skyeye-1.3.0_rc1
./configure
./make lib
./make
./make install
./make install_lib
问题:编译的时候会提示诸如xlib.h 不存在的问题,这是因为lib库安装不完全造成的,使用sudo apt-get install libxpm-dev
出现:gui/x.cc: In member function ‘virtual void bx_x_gui_c::specific_init(int, char**, unsigned int, unsigned int, unsigned int)’:
gui/x.cc:485: error: ‘XCreatePixmapFromData’ was not declared in this scope
执行 sudo aptitude install libxpm-dev
安装完成之后,运行./skyeye,出现:
SkyEye is an Open Source project under GPL. All rights of different parts or modules are reserved by their author. Any modification or redistributions of SkyEye should note remove or modify the annoucement of SkyEye copyright.
Get more information about it, please visit the homepage http://www.skyeye.org.
Type “help” to get command list.
(skyeye)
说明安装成功
安装完成之后,为了以后使用方便,可以将skyeye 拷贝到/usr/bin/下
2、OKL4:
tar zxvf okl4_3.0.tar.gz
3、交叉编译工具
cd ~
tar zxvf arm-linux-gnueabi-4.2.4.tar.gz
tar xjvf arm-linux-3.4.4.tar.bz2
修改okl4_3.0/tools/toolchains.py:
#gnu_arm_libgcc_toolchain = generic_gcc(“arm-linux-“)
#gnu_arm_eabi_toolchain = generic_gcc_3_4_libgcc(“/opt/okl/Linux-i386/arm/gcc-4.2.4-glibc-2.7/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-“)
gnu_arm_eabi_toolchain = generic_gcc_3_4_libgcc(“/home/fanyl/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-“)
gnu_arm_toolchain = generic_gcc_3_4_libgcc(“arm-linux-“)
#gnu_arm_nptl_toolchain = generic_gcc_3_4_libgcc(“/opt/okl/Linux-i386/stow/arm-linux/bin/arm-linux-“)
gnu_arm_nptl_toolchain = generic_gcc_3_4_libgcc(“/home/fanyl/opt/nicta/tools/gcc-3.4.4-glibc-2.3.5/arm-linux/bin/arm-linux-“)
gnu_mips64_toolchain = generic_gcc_3_4(“mips64-elf-“)
gnu_mips32_toolchain = generic_gcc_3_4(“mips-linux-“)
#arm_linux_toolchain = generic_gcc_3_4(“/opt/tools/3.4/arm-linux/bin/arm-linux-“)
arm_linux_toolchain = generic_gcc_3_4(“/home/fanyl/opt/nicta/tools/gcc-3.4.4-glibc-2.3.5/arm-linux/bin/arm-linux-“)
4、编译OKL4例程:
#cd ~/okl4_3.0
#将skyeye.conf拷贝到这个目录下
# tools/build.py machine=gumstix project=examples example=pingpong kdb_serial=True PYFREEZE=False
会出现诸如arm-linux-g++没有的问题,增加环境变量: export PATH=$PATH:/home/fanyl/opt/nicta/tools/gcc-3.4.4-glibc-2.3.5/arm-linux/bin/
skyeye.conf修改为如下:
arch:arm
cpu: pxa25x
mach: pxa_lubbock
mem_bank: map=M, type=RW, addr=0xA0000000, size=0x4000000
mem_bank: map=I, type=RW, addr=0x40000000, size=0x4C000000
uart:mod=term
#log: logon=2, logfile=/tmp/sk1.cw.log, start=0, end=20000000000
#log: memlogon=1, logfile=/tmp/sk1.cw.log, start=0, end=20000000000
#编译pingpong例程
# tools/build.py machine=gumstix project=examples example=pingpong kdb_serial=True PYFREEZE=False
5、运行
skyeye -c skyeye.conf -e build/images/image.boot