您的位置:首页 > 其它

[ubuntu]yocto的安装配置与开发

2015-11-17 14:20 204 查看
转载请注明来自:秦时明月_whu
http://blog.sina.com.cn/s/blog_690aa174010111b3.html
yocto官网:http://www.yoctoproject.org

在这里有很多英文文档:http://www.yoctoproject.org/documentation

我下面的这些方法都是看完这些文档总结的。

1.安装yocto

参考:http://www.yoctoproject.org/docs/current/yocto-project-qs/yocto-project-qs.html

step1:切换到bash

命令:sudo dpkg-reconfigure dash

然后选no

假如不切换到bash的话,后面的step 就会报错:Using dash as /bin/sh causes various subtle build problems, please use bash instead (e.g. 'dpkg-reconfigure dash' on an Ubuntu system.

------------------下面是我遇到的问题,也许你没遇到,那就勇敢的跳过去吧----------------------

很奇怪的是,我执行sudo dpkg-reconfigure dash后根本就没跳出让你选no的对话框。

于是到/bin下面看了一下:

lrwxrwxrwx 1 root root 4 2011-10-30 16:57 rbash -> dash

发现当前shell指向的是dash。没办法,只能强制链接了。

bear@bear-K40IE:~$ sudo dpkg-reconfigure dash

[sudo] password for bear:

bear@bear-K40IE:~$ ln -s /bin/bash /bin/dash

ln: creating symbolic link `/bin/dash': File exists

bear@bear-K40IE:~$ ln -s --force /bin/bash /bin/dash ##没办法,只能强制链接了。

--------------------------------------------------------------------------------

stpe2. 安装ubuntu下yocto依赖的库

命令:

$ sudo apt-get install sed wget cvs subversion git-core coreutils \ unzip texi2html texinfo libsdl1.2-dev docbook-utils gawk \ python-pysqlite2 diffstat help2man make gcc build-essential \ g++ desktop-file-utils chrpath libgl1-mesa-dev libglu1-mesa-dev \ mercurial
autoconf automake groff libtool xterm

step3. 下载Yocto Project
http://downloads.yoctoproject.org/releases/yocto/yocto-1.1/poky-edison-6.0.tar.bz2
step4.编译镜像,在QEMU虚拟机下运行yocto

(其实可以不编译镜像的,直接使用别人编译好的镜像也可以,但是,我没编译过系统,所以很好奇就试了下)

注意:执行这步前,先要保证你有至少剩余50G的空间!!!!!

命令:

$ wget http://downloads.yoctoproject.org/releases/yocto/yocto-1.1/poky-edison-6.0.tar.bz2
$ tar xjf poky-edison-6.0.tar.bz2

$ source poky-edison-6.0/oe-init-build-env edison-6.0-build

执行完上面这部后,会发现目录多了个edison-6.0-build,且当前目录会跳到 edison-6.0-build 。

然后为了加快镜像的编译速度,需要修改下edison-6.0-build/conf/local.conf的参数

$gedit conf/local.conf

BB_NUMBER_THREADS = "4" ##就是你电脑核数 X 2 我的电脑是双核的,所以"4"

PARALLEL_MAKE = "j 3" ##电脑核数的1.5倍

原教程说如果没有50G空间的话,在local.conf末行添加:INHERIT += rm_work 边编译文件边删除用过的文件。 但是,但是,还是建议不要加这个东西,因为编译一次镜像要7-8个小时,且大部分时间都耗在下载需要的文件上面,谁也无法保证编译一次就通过,所以,还是别加了。(我就每加,第一次通宵编译,8h后报错,再次编译,又改了下local.conf的参数,编译只要1h)

还有很多参数也是可以修改,仔细看看local.conf,里面说的很清楚。

修改完local.conf后,记得保存。

然后执行:

$ bitbake -k core-image-sato

开始漫长的镜像编译过程

......

......

......

这时候你该away from your computer 给你的爸妈打个电话聊聊天什么的

......

......

终于编译完了,试着执行

$runqemu qemux86

如果报错什么的,cd到存放poky-edison-6.0 的目录(我的是/home/bear/study)

bear@bear-K40IE:~/study$ source poky-edison-6.0/oe-init-build-env edison-6.0-build

runqemu qemux86

$runqemu qemux86

(其实,bitbake和runqemu执行之前都需要$ source poky-edison-6.0/oe-init-build-env edison-6.0-build )

然后,QEMU就出现了,yocto安装完毕。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: