1.首先制作目标测试文件
#cd /tmp
#vi main.c
编辑main.c
#include <stdio.h>
#include <stdlib.h>
int
main(int argc,char* argv[])
{
printf("%s/n","hello world");
}
ctrl+c以后输入:wq后回车保存
使用交叉编译器编译
#arm-linux=gcc -o main main.c
#ls
看到有main文件生成
2.环境介绍
我的系统是windows2003 通过超级终端用串口连接开发板。
windows2003 的IP地址是192.168.18.173
windows 2003安装虚拟机 虚拟机上安装的是fedora 10 ip地址是192.168.18.170
我们称为宿主。
路由器的地址是192.168.18.1
现在要设置下目标机器 即开发板上的系统的IP地址为192.168.18.125
3 设置目标机器的IP地址
设置开发板为nand flash启动 通电以后 在超级终端上回车
进入命令行,输入
#ifconfig eth0 192.168.18.125
使用ifconfig命令查看结果
#ifconfig 如果正确进入下一步
4 挂载NFS系统到目标机的/mnt
首先在fc10 中
# cd /opt/FriendlyARM/mini2440/root_qtopia
# mkdir proj
# cd /tmp
# cp ./main /opt/FriendlyARM/mini2440/root_qtopia/proj
/opt/FriendlyARM/mini2440/root_qtopia为fc中NFS的共享目录
在开发板上的终端命令行中输入
# mkdir /mnt
# mount -t nfs -o nolock 192.168.18.170:/opt/FriendlyARM/mini2440/root_qtopia /mnt
5.测试目标机上的程序执行
在终端中继续输入
# cd /mnt/proj
注意此时NFS系统的文件已经挂载在/mnt下了。
输出ls出现我们刚才生成的程序
# ls
main
# ./main
hello world
6.通过NFS启动目标机的系统
打开超级终端,连接到目标机器
开发板设置成nand flash启动,通电以后,快速按下空格键。
出现提示:Supervivi>
输入
param set linux_cmd_line "console=ttySAC0 root=/dev/nfs nfsroot=192.168.18.170:/opt/FriendlyARM/mini2440/root_qtopia ip=192.168.18.125:192.168.18.170:192.168.18.1:255.255.255.0:sbc2440.arm9.net:eth0:off"
回车以后 Supervivi > boot
系统启动,这样目标机在完成linux内核加载,就可以从宿主机上的NFS 文件系统启动了。
说明:开发板上的启动顺序是 bootloader(在这里是我们使用Supervivi)->linux内核->根文件系统