iTOP-4412开发板使用

使用环境:win7 旗舰64位,VMware11 使用使用板上提供的ubuntu12.04,用VMWARE直接打开虚拟机,因为之前开发epc9600开发板,所以虚拟机网络已经设置过,加载ubuntu12.04后发现可直接联网.

交叉编译工具链已经存放在/usr/local/arm/arm-2009q3/bin,而且在/root/.bashrc里已经export PATH=$PATH:/usr/local/arm/arm-2009q3/bin,且export PATH=$PATH:/usr/local/ndk/android-ndk-r8b,但没起作用要source .bashrc,这样每次登陆root用户都要cd /root , source .bashrc

改变方法,vi /home/topeet/.bahsrc

添加export PATH=$PATH:/usr/local/arm/arm-2009q3/bin  export PATH=$PATH:/usr/local/ndk/android-ndk-r8b

这样只要登录root用户,环境变量自动就好了。

可以发现/root/.bashrc最后还有两行

#export PATH=$PATH:/usr/local/arm/4.4.1/bin
#export PATH=$PATH:/usr/local/arm/4.3.2/libexec/gcc,都被注释掉了。这两行都是添加环境变量的,但这两行添加的交叉编译器名称和/usr/local/arm/arm-2009q3/bin里的是一样的,不能同时生效,应该是切换工具链时使用

 

参照ubuntu14.04.32 vmware11开发环境搭建 http://www.cnblogs.com/cenglinjinran/p/4583784.html 安装vmware tools

sudo apt-get update

 sudo apt-get install nfs-kernel-server 

升级linux内核到3.5????????????????升级不成功,内核不断自重启,返回3.0

但原本的3.0镜像不支持nfs,需要重新编译内核使他支持nfs文件挂载,重新配置内核,开启nfs后成功。

cat /proc/filesystems
如果显示nodev nfs,表示内核有支持NFS。
内核编译可参考讯为文档iTOP-4412实现NFS网络文件系统.pdf
 

使用buildroot重新烧写根文件系统

1、配置编译buildroot,生成 /opt/share/buildroot-2014.05/output/image/root.tar。

开发板自带的根文件系统解压至/opt/share/root.b/,

rm -rf /opt/share/root/*

tar -xvf  /opt/share/buildroot-2014.05/output/images/rootfs.tar -C  /opt/share/root

rm /opt/share/root/dev/console 

cp -rf  /opt/share/root.b/etc/firmware/   /opt/share/root/etc/

cp   /opt/share/root.b/etc/rc.d/init.d/netd   /opt/share/root/etc/

cp    /opt/share/root.b/etc/eth0-setting   /opt/share/root/etc/

cp   /opt/share/root.b/etc/init.d/ifconfig-eth0   /opt/share/root/etc/init.d/

cp   /opt/share/root.b/etc/inetd.conf   /opt/share/root/etc/

cp  /mnt/hgfs/soft/epc9600/wqy-microhei.ttf   /opt/share/root/usr/lib/fonts

vi   /opt/share/root/etc/init.d/rcS

将原根文件系统各文件/etc/init.d/rcS 文件中的下列部分添加到新生成的文件系统etc/init.d/rcS最后。

umask 022

trap ":" INT QUIT TSTP

[ -e /proc/1 ] || /bin/mount -n -t proc none /proc
[ -e /sys/class ] || /bin/mount -n -t sysfs none /sys
[ -e /dev/tty ] || /bin/mount -t ramfs none /dev

/sbin/mdev -s
# mounting file system specified in /etc/fstab
mkdir -p /dev/pts
mkdir -p /dev/shm
/bin/mount -n -t devpts none /dev/pts -o mode=0622
/bin/mount -n -t tmpfs tmpfs /dev/shm
/bin/mount -n -t ramfs none /tmp
/bin/mount -n -t ramfs none /var

mkdir -p /var/log
mkdir -p /var/www
mkdir -p /var/run
mkdir -p /var/lib/lighttpd

 

ln -sf /dev/ttyS2 /dev/tty2
ln -sf /dev/ttyS2 /dev/tty3
ln -sf /dev/ttyS2 /dev/tty4

amixer cset numid=5 127
amixer cset numid=6 1
amixer cset numid=30 8,0
amixer cset numid=40 1
amixer cset numid=43 1
amixer cset numid=47 1

syslogd

/etc/netd start

echo "*************************************" > /dev/ttySAC2
echo " http://www.gainuo.com " > /dev/ttySAC2
echo "*************************************" > /dev/ttySAC2

sleep 2

/etc/firmware/load_firmware

/sbin/ifconfig lo 127.0.0.1

/etc/init.d/ifconfig-eth0

echo 0 > /proc/sys/kernel/hung_task_timeout_secs

echo "Starting Qt, please waiting..." > /dev/ttySAC2

#configure tslib1.1

export TSLIB_ROOT=/
export TSLIB_TSDEVICE=/dev/input/event2
export TSLIB_TSEVENTTYPE=input
export TSLIB_CONFFILE=/etc/ts.conf
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0

export QT_QWS_FONTDIR=/usr/lib/fonts

if [ -c /dev/input/event2 ]; then
export QWS_MOUSE_PROTO='Tslib:/dev/input/event2'
if [ -e /etc/pointercal ] ; then
fsize=$(/bin/ls -al /etc/pointercal | cut -d' ' -f 23)
echo $fsize
if [ $fsize -ge "1" ]; then
echo "/etc/pointercal is exit"
else
echo "/etc/pointercal is empty"
rm /etc/pointercal
/usr/bin/ts_calibrate
fi
else
echo "/etc/pointercal not found"
/usr/bin/ts_calibrate
fi
else
export QWS_MOUSE_PROTO="MouseMan:/dev/input/mice"
#>/etc/pointercal 
fi

export HOME=/root

cd /usr/share/qt/demos/embedded/fluidlauncher
./fluidlauncher -qws &

cd  ~/

mount -t nfs  192.168.1.57:/opt/share /mnt/   -o nolock

#must run this shell
/bin/sh

 

 echo  > /opt/share/root/etc/init.d/ifconfig-eth0

echo nameserver 192.168.1.1 > /opt/share/root/etc/resolv.conf

2、cd /home/topeet/Linux+QT   make_ext4fs -s -l 314572800 -a root -L linux system.img root  生成根文件镜像

3、烧录镜像到开发板,进入uboot命令行,sdfuse flash system system.img,reset。

 

posted on 2015-07-01 13:40  层林尽染  阅读(1350)  评论(0编辑  收藏  举报

导航