[OK210开发板体验]入门篇(3)开发环境(软件安装、开发环境、烧写系统)

原创 2015-12-23 13:25:00 [OK210开发板体验]入门篇(3)开发环境(软件安装 开发环境 烧写系统)
前面分别介绍了


[OK210开发板体验]的第一篇:开箱验板
[OK210开发板体验]的第二篇:板载资源
今天是[OK210开发板体验]的第三篇:开发环境的搭建,主要包括以下内容:
一 软件安装
1 VMWare WorkStation虚拟机的安装
2 Ubuntu Linux操作系统的安装
3 SecureCRT串口终端的安装
4 WinPM的安装
5 SD Wirter的安装
二 开发环境
1 VMWare-tools的安装
2 Samba的安装a
3 NFS的安装
三 烧写系统
1 Uboot的编译与烧写
2 Linux系统的编译与烧写
3 RootFS根文件系统的编译与烧写
下面逐一进行分析介绍。
一 软件安装
1 VMWare WorkStation虚拟机的安装
  VMware Workstation(中文名“威睿工作站”)是一款功能强大的桌面虚拟计算机软件,提供用户可在单一的桌面上同时运行不同的操作系统,和进行开发、测试 、部署新的应用程序的最佳解决方案。通常是在Window下安装VMware Workstation,然后在VMware Workstation下安装类Linux操作系统,如Ubuntu、Redhat、CentOS、Fedora等。与VMware Workstation类似功能的还有VirtualBox等。
  VMware Workstation软件可以在网上下载,也可以飞凌分享光盘中下载(下载地址:http://pan.baidu.com/s/1eQdEXQq 密码: gh6k),后者的具体位置:OK210 V1.1>实用工具,具体的安装方法,可参考百度经验:vmware tools怎么安装。
2 Ubuntu Linux操作系统的安装
  Ubuntu(乌班图)是一个以桌面应用为主的Linux操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词,意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观,类似华人社会的“仁爱”思想。Ubuntu基于Debian发行版和GNOME桌面环境,而从11.04版起,Ubuntu发行版放弃
了Gnome桌面环境,改为Unity,与Debian的不同在于它每6个月会发布一个新版本,即一般是04版或10版。Ubuntu的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。Ubuntu具有庞大的社区力量,用户可以方便地从社区获得帮助。2013年1月3日,Ubuntu正式发布面向智能手机的移动操作系统。
  Ubuntu最大的特点是免费。所以可以从飞凌分享光盘中下载,位置位于:OK210 V1.1>实用工具,也可以从官网下载,建立安装飞凌提供的2012-04版,具体的安装过程,可参考百度经验:怎样使用VMware Workstation(虚拟机)。
3 SecureCRT串口终端的安装
  进行Linux开发,串口调试是少不了的,但似乎飞凌提供的是DNW1(好像三星的ARM产品都使用这个),该串口终端除了可以实现文件系统的查看外,还可以进行代码的烧写。但本人更愿意使用SecureCRT这个串口终端,因为支持SSH,同时支持Telnet和rlogin协议等。具体的安装可以参考百度经验:windows 下安装secureCRT;具体的使用及配置可参考:SecureCRT 之串口快速使用教程。
4 WinPM的安装
  winpm是一个很好的硬盘分区管理工具。 它提供NTFS和FAT32互转绝对不伤害数据,自由分割硬盘分区大小(包括无损的调准分区大小),全中文界面,操作很简单。即它在使用SD卡烧写系统时,会用到,而它是一个可执行文件,具体的位置在飞凌分享光盘的:OK210 V1.1>实用工具,但是win7下直接运行会报错,解决方法: 右击winpm.exe属性,打开“兼容性”选项卡,兼容模式勾上“以兼容模式运行这个程序”,选择“Windows XP(Serivce Pack 3)”,并勾上“以管理员身份运行此程序”就可以正常的使用了,调准好分区后最好重启电脑。注意事项:最好在安全模式下调准,以免在正常模式要调准的某些分区,有软件在后台运行,导致调准失败。
5 SD Wrirter的安装
  SD Writer位于飞凌分享光盘的:OK210 V1.1>实用工具,即使用该工具来烧写系统,但在Win7下使用,同样会报错,解决方法同WinPE。
  以上就是软件安装的全部内容,其中:VMWare Workstation用来安装Ubuntu,而Ubuntu是跑Linux的操作系统,SecureCRT是一个串口终端,用来使用“命令”的方法执行系统中的程序,而WinPE是用来对SD卡分区的,SD Writer是用来将系统文件烧写到SD的。
二 开发环境
1 VMWare-tools的安装
  VMware Tools是VMware虚拟机中自带的一种增强工具,相当于VirtualBox中的增强功能(Sun VirtualBox Guest Additions),是VMware提供的增强虚拟显卡和硬盘性能、以及同步虚拟机与主机时钟的驱动程序。其最大的功能是:能实现主机与虚拟机之间的文件共享,同时可支持自由拖拽(即实现Window与Ubuntu的文件交互)的功能,鼠标也可在虚拟机与主机之前自由移动(不用再按ctrl+alt),且虚拟机屏幕也可实现全屏化。具体的安装见百度经验的:vmware tools怎么安装。
2 Samba的安装
  Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。即它也是一种实现Ubuntu与Window资源的无缝互访的方法,具体的安装与配置可参考Ubuntu WiKi的:Samba。
3 NFS的安装
  NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。即它常用来实现嵌入式中的宿主机和目标机的网络链接,方便程序的调试,避免程序的的烦琐烧写。具体的安装及配置可参考百度经验的:安装和使用NFS服务器的方法。
  以上就是当前开发环境的全部内容,其中VMware-tools和Samba实现Window与Ubuntu资源的互访,NFS实现Ubuntu与OK210特定资源的互访。
三 烧写系统
0 烧写前准备
 完成以上两在部分:后,接下来实现OK210系统的烧写。在烧写前,需要简单准备一下:
1)下载源码

 打开Ubuntu,在home目录新建一文件夹:OK210,在OK210文件夹下,新建nfs目录,其中在OK210文件夹中放入从飞凌分享光盘中下载的arm-linux交叉编译器,uboot源码,linux源码,根文件系统源码:mkyaffs2image-nand1g  Yaffs2.tar.gz,Linux安装脚本,在nfs中存放测试文件。最后的结果如下所示:

2)安装arm-linux交叉编译器
分别执行如下命令:


tar xfjv arm-2009q3.tar.bz2 (解压文件)

sudo vi /etc/profile           (打开配置文件,在文件的最下面,输入以下语句)

exportPATH=$PATH:/home/ok210/arm-2009q3/bin

source /etc/profile               (立即生效)

arm-linux-gcc -v                  (查看是否安装成功,如果输出内容,说明成功)


ps,本在安装在当前目录:/home/ok210/,最好安装在/usr/local/arm/。

3)配置环境

执行系统更新和工具安装脚本命令

bash linux-install.sh

但更新失败,故输入以下命令,进行工具的安装:

sudo apt-get install xinetd  libncurses5-dev u-boot-tools autoconfautomake vim

4)SD分区
  具体参考飞凌分享光盘目录:OK210 V1.1>用户手册下的OK210软件手册-v1.1.pdf 的78页。
1 Uboot的编译与烧写
1)U-Boot,全称Universal Boot Loader,是遵循GPL条款的开放源码项目。该内容主要实现系统从上电到Linux内核启动前的初始化工作。具体的源码可以从官网免费下载,但多数是由开发板供应商提供。OK210的Uboot位置飞凌分享光盘目录:OK210 V1.1>Linux>U-boot源码。
2)  编译Uboot
重新进入/home/ok210目录,分别执行如下命令,进行uboot的编译:

tar vxzf uboot_1.3.4.tar.gz

cd uboot_smdkv210

make distclean

make clean

make CROSS_COMPILE=arm-none-linux-gnueabi-  forlinx_linux_config
make CROSS_COMPILE=arm-none-linux-gnueabi-

cd forlinx/

./forlinx-movi

ps:编译成功后,将在‘uboot_smdkv210/forlinx’目录下产生名为‘u-boot-210.bin’的二进制文件。该文件即我们需要烧写到Nandflash 的U-boot 映像文件。名为‘mmc-210.bin’的二进制文件。该文件即我们做SD 卡引导时所需文件。

3)烧写Uboot
打开OK210软件手册-v1.1.pdf 的82页,执行步骤13-16。
ps:如果烧写不成功,一是参考上面的WinPE错误处理;二是看是不SD设置写保护
4)准备启动
在Window下打开SD卡,把mmc-210.bin放入SD卡;新建sdfuse文件夹,把u-boot-210.bin放入sdfuse文件夹。
5)启动
将SD卡插入OK210中,设置拨码开关off,on,on,off(代表SD卡启动),上电启动,串口终端出现如下信息,说明uboot烧写成功。在启动内核的时候,未发现,接下来进行内核的烧写。


2 Linux系统的编译与烧写
1)编译内核
进入/home/ok210目录,执行如下命令:


tar xvzf linux2.6.35.7.tar.gz

cd android-kernel-samsung-dev/

make distclean

make:/usr/local/arm/arm-2009q3/bin/arm-none-linux-gnueabi-gcc: Command not found
ps:因为交叉编译器设置错误,使用如下的人工指定

make CROSS_COMPILE=arm-none-linux-gnueabi- distclean

cp ok210_linux_config .config

make menuconfig

 File systems  --->Network FileSystems --->将与NFS相关的选项,全部勾选上。

make CROSS_COMPILE=arm-none-linux-gnueabi- zImage

ps:编译结束后将在内核源码目录的arch/arm/boot 中得到Linux 内核映像文件:zImage 并更名为zImage-210 作为烧写文件(因U-boot 烧写时读取内核文件只能识别zImage-210 文件名)
   cp arch/arm/boot/zImage arch/arm/boot/zImage-210
2)准备启动
在Window下打开SD卡,把zImage-210放sdfuse文件夹。
3)上电启动

将SD卡插入OK210中,设置拨码开关off,on,on,off(代表SD卡启动),上电启动,串口终端出现如下信息,说明内核烧写成功。在启动根文件系统的时候,未发现,接下来烧写根文件系统。



3 RootFS根文件系统的编译与烧写
1)制作根文件系统
进入/home/ok210目录,执行如下命令:


tar zvfx Yaffs2.tar.gz

 tar: Exiting with failure status due toprevious errors
ps:出现上述错误,说明没有权限,则执行如下命令

sudo tar zvfx Yaffs2.tar.gz

sudo chmod u+x mkyaffs2image-nand1g

sudo ./mkyaffs2image-nand1g FileSystem-Yaffs2 rootfs-210.yaffs2

ps:最后生成rootfs-210.yaffs2是可以下载到开发板nandflash 中的yaffs2 文件系统映像。

注意:mkyaffs2image 可执行文件是使用Linux3.0 源代码目录yaffs2 文件夹下utils 目录中的mkyaffs2image.c 文件编译出来的,如果您有兴趣可以自己制作适合256MB NandFlash 和1G NandFlash 的Yaffs2 工具。

2)准备启动
在Window下打开SD卡,把 rootfs-210.yaffs2放入sdfuse文件夹。
3)上电启动

将SD卡插入OK210中,设置拨码开关off,on,on,off(代表SD卡启动),上电启动,串口终端出现如下信息,说明烧写成功。



自此,[OK210开发板体验]的第三篇:开发的环境搭建检验结束。


 


相关产品 >

  • OKMX6UL-C开发板

    飞凌嵌入式专注imx6系列imx6ul开发板、飞思卡尔imx6ul核心板等ARM嵌入式核心控制系统研发、设计和生产,i.mx6UL系列产品现已畅销全国,作为恩智浦imx6ul,imx6ul开发板,i.mx6提供者,飞凌嵌入式提供基于iMX6 iMX6UL解决方案定制。

    了解详情
    OKMX6UL-C开发板
  • OKMX6ULL-C开发板

    40*29mm,双网双CAN,8路串口| i.MX6ULL开发板是基于NXP i.MX6ULL设计开发的的一款Linux开发板 ,主频800MHz,体积小,其核心板仅40*29mm,采用板对板连接器,适应场景丰富。 了解详情
    OKMX6ULL-C开发板

推荐阅读 换一批 换一批