
本文将介绍如何定制与编译Yocto
准备:
1、一把梯子,让你的电脑可以看到墙外的世界
2、一个linux系统,我用的ubuntu 12 (这是我下载好的ubuntu12系统 http://pan.baidu.com/s/1qWM9Z3m)
3、一台双核以上,50G空余空间的电脑
4、足够的耐心
先下载intel提供的Yotco编译环境包Yocto编译环境,点我下载,以下演示的是基于VMware Workstation下安装的Ubuntu 12.4系统,
系统在上部有提供下载链接。
打开ubuntu的文件管理器,这个图标
点击"主文件夹",把下载好的Yocto编译包edison-src-rel1-maint-rel1-ww42-14.tgz 拖入虚拟机主文件夹里,如图

接下来点击左上角"Dash主页"的图标,输入"终端",点击终端,
输入:“ sudo apt-get install build-essential git diffstat gawk chrpath texinfo libtool gcc-multilib ”回车
输入 tar xvf edison-src-rel1-maint-rel1-ww42-14.tgz 回车, 如图
这一步是解压文件

接着输入" cd edison-src "回车,进入文件夹

输入" ./device-software/setup.sh "回车 开始构建编译环境

输入 " source poky/oe-init-build-env " 回车 设置环境变量

重要的一步,开始搭梯子!!!
点击右上角这个按钮 
然后选择配置"wei" pn

开始配置你自己或者从JS那里买的梯子
完成连接以后在进行下一步,不然就一直连
然后我们开始配置编译参数,在终端输入" getconf _NPROCESSORS_ONLN "回车

可以看到打印出了一个数字,我的是2,记住这个数字
在文件管理里进入 /dison-src/build/conf 打开local.conf文件

找到BB_NUMBER_THREADS 语句,把里面的数字修改成你刚才获取的那个数,我的是2
找到 PARALLEL_MAKE 语句,也把后面的数字改成刚才获取的数字

按Ctrl + S 保存,关闭文件
然后在终端输入" bitbake edison-image " 这样就开始编译Yocto系统了

回车以后就开始漫长的建立

以下开始介绍如何处理会出现的错误
如果遇到黄色的警告提示可以不用管,继续让软件编译

如果你遇到了红色的EERO错误那就马上停止,按Ctrl + C ,一直按,直到出现命令行输入状态,如图

然后继续输入" bitbake edison-image " 回车,重新接下去编译
一直到 Currently 4 running tasks (6 of 2802): 里面的数字调到2802那就编译好了,以后再编译十几分钟就可以了,不需要在下载
当初次编译好以后我们就可以开始定制软件,上面的操作完成后会进入输入命令,我们输入" hob"进入图形化定制界面


Select a machine 选择 edison ,选完后需要几分钟设置参数
接着在Select an image recipe 选择 edison-image 如图

点击右下角的" Edit image recipe " 进行系统定制

选择你需要或者删除的软件,这一步就是在定制系统了
然后按右下角的" Build packages "开始编译系统,这次就只需要编译你新增的软件包,所以会很快
完成以后会出现如下界面

我们就可以关闭窗口了
接着在终端输入" cd " 回车 " ./edison-src/device-software/utils/flash/postBuild.sh " 回车

会提示"cp:无法获取"/home/while/edison-src/build/tmp/deploy/images/edison/vmlinux" 的文件状态(stat):没有那个文件或目录"
没关系,跳过即可

按照下图连接Edison , 注意:在圆口电源线与USB线中间有个开关要拨到上,就是往两个USB口的方向!

连接好以后电脑会自动安装驱动,等驱动安装完毕后会多出一个叫Edison的磁盘
打开文件管理器,进入/edisin-src/build/toFlash 文件夹

把toFlash的文件全部复制到Edison磁盘
按下图连接Edison

把在圆口电源线与USB线中间有个开关要拨到下,就是往圆口电源的方向
打开设备管理器可以看到新增了一个串口

记下新增的串口号,比如我的是COM3
打开putty.exe, Connection type 选择 Serial,在Host Name(or IP address) 填上刚才记下的COM号,Port填入115200,Saved Sessions 填入 Edison ,按Save保存
操作完会像这样

点击Edison,然后按回车,会出现命令提示行;
输入root 按回车

输入reboot ota 回车进行系统升级,等待5分钟左右,跳出命令输入行就重装完成了
编译Yotco系统教程结束
文章来源:
Arduino中文社区