1 构建嵌入式开发平台
1.嵌入式linux 软件系统由bootloader、kernel、root filesystem 构成,如下:
Bootloader(一次固化) + 内核(多次更新) + 根文件系统制作
2.资料拷贝:
资料存放路径(24 机)如下:
2.6.35.7_tools
将上面路径下用到的文件拷到自己虚拟机中,存放在自建目录下:
例如(推荐):/home/edu/share/linux_platform2.6.35.7/
注意:以上资料一定要拷贝放入linux 虚拟机目录下,且目录有一切权限,
一定不能放到/mnt/hgfs 所映射的磁盘中
1.1 安装交叉编译器arm-linux-gcc-4.3.2(如果4.3.2 已经安装不必做此步骤)
Step1:进入虚拟机中找到你上步自建的目录中,找到arm-linux-gcc-4.3.2.bz2 文件:
# cd /home/edu/share/linux_platform2.6.35.7/
Step2:查看自己的虚拟机是否安装交叉编译工具链:
#echo $PATH
Step3:安装以下交叉编译工具:(4.3.2: 用于交叉编译各种镜像)
#mkdir –p /usr/local/arm (如果有这个目录就不用建了)
#tar jxvf arm-linux-gcc-4.3.2.bz2 –C /usr/local/arm
其中4.3.2 需要假加入环境变量
#sudo vim ~/.bashrc (在最后加入下面这行)
export PATH=/usr/local/arm/4.3.2/bin:$PATH
#source ~/.bashrc (使环境变量设置立即生效)
1.2 配置编译u-boot
Step1:在虚拟机中解压unsp210_u-boot.tar.bz2 文件
#tar jxvf unsp210_u-boot.tar.bz2
Step2:进入解压后的文件目录中
#cd unsp210_u-boot
Step3:编译前清除旧的配置文件
#make distclean
Step4:生成新的配置文件
#make unsp210_config
Step5:编译生成u-boot 可执行文件
#make
在当前目录下会生成一个u-boot.bin 的文件
将tools 目录下生成的mkimage 文件拷贝到/bin 目录中,后面用于制作u-boot 所需格式
的内核
#cp u-boot/tools/mkimage /bin (这一步也可以不做,主要用于生成uImage)
1.3 配置编译内核
Step1:在虚拟机中解压unsp210_linux_2.6.35.tar.gz 文件
#tar zxvf unsp210_linux_2.6.35.tar.gz
Step2:进入解压后的文件目录
#cd unsp210_linux_2.6.35
Step3:清除旧的内核配置文件
#make distclean
Step4:重命名内核配置文件
#cp unsp210_config_20121211 .config
Step5:配置内核
#make menuconfig
注意:如果执行“make menuconfig”提示找不到“ncurses 库”,那么执行更新命令:
sudo apt-get install libncurses5-dev
由于采用的是配置好的脚本,因此对配置界面不用做任何修改,直接保存退出即可。
Step6:生成内核镜像文件
#make 或make zImage
在/arch/arm/boot 下会生成zImage 文件
1.4 yaffs 根文件系统的制作
yaffs 格式的根文件系统是可读可写的文件系统,没有经过压缩
Step1:解压根文件系统文件
#tar zxvf rootfs_qt210_QT4.7.0_20121210.tar.gz
Step2:更改文件夹的名称
#mv rootfs_qt210_QT4.7.0_20121210 rootfs
Step3:给mkyaffs2image 添加可执行权限
#chmod +x mkyaffs2image
Step4:拷贝mkyaffs2image 文件到/bin 下
#sudo cp mkyaffs2image /bin
Step5:生成根文件系统镜像
#mkyaffs2image rootfs rootfs.yaffs
1.5 镜像烧写方法(两种)
1.5.1 使用网络的方法进行烧写
Step1:首先保证我们的网线连接正确,电源线,串口线同样准备好。
Step2:上电使用我们的开发板进入U-boot 命令行模式。
Step3:这时输入命令:print 会有下面的提示信息:
Step4:这时需要我们进行设置"serverip(windows's IP)" and "ipaddr(开发办的IP)"
Step5:分别使用的命令是:setenv serverip 172.20.223.XX(windows IP) 或10.221.X.XX(windows IP)
setenv ipaddr 172.20.223.XX(开发板的IP)或10.221.X.XX(开发板的IP)
Step6:此时需要保存刚才的设置:使用命令进行设置:saveenv
Step7:使用ping 命令查看两者之间的网络是否连通:(可在开发板上ping PC 机)
#ping *.*.*.(windows 的IP 地址)
Step8:这时需要我们打开tftpd32.exe 文件
路径(北京):
\172.20.220.24软件共享