查看: 2479|回复: 0

Yocto 工具的使用 -- 使用前准备

[复制链接]
  • TA的每日心情
    开心
    昨天 22:46
  • 签到天数: 596 天

    连续签到: 3 天

    [LV.9]以坛为家II

    发表于 2018-6-19 08:47:33 | 显示全部楼层 |阅读模式
    分享到:
    Yocto 工具的使用 -- 使用前准备

    .
    Yocto 是什么东西,上官网看看:
    Yocto项目官网:https://www.yoctoproject.org/

    The Yocto Project (YP) is an open source collaboration project that helps developers create custom Linux-based systems for embedded products, regardless of the hardware architecture.
    Yocto 是个开源协作项目,可以帮助用户创建硬件框架无关的嵌入式linux系统。其实是和硬件框架有关的,但是是里面的模块处理好了,对用户来说是硬件架构无关。
    画重点:yocto可以编译linux系统,并且不用关心底层硬件框架。这样对用户几乎没什么要求了,即使对底层硬件框架不熟悉也没关系,别人做好了,直接用就好。
    米尔的产品能提供yocto 这个工具的支持,其实就是前 freescale 一直提供 yocto 支持,所以米尔基于 freescale的产品可以借用yocto 项目编译系统。(现在freescale被nxp收购,叫恩智浦)
    本文以米尔 mys-y6ull 为例,看一下yocto怎么使用的:

    • A,使用yocto前host 主机的准备
    • B,Yocto软件准备,yocto源码包准备,uboot和kernel 源码包准备
    • C,编译嵌入式 Linux 系统,编译工具链,和编译过程中遇到的问题
    Yocto 项目使用前,主机需要做的准备工作:
    1,操作系统选择,yocto官方推荐了一堆系统,几乎涵盖了重大的linux发行版:

    米尔mys-y6ull 使用的 ubuntu 16.04 系统,本文也使用 ubuntu 16.04 系统
    2,系统上需要安装的软件包:
    Yocto 官网推荐是这些:

    米尔mys-y6ull 安装的软件如下:
    build-essential git-core libncurses5-dev flex bison texinfo zip unzip zlib1g-dev gettext u-boot-tools g++ xz-utils mtd-utils gawk diffstat gcc-multilib python git make gcc g++ diffstat bzip2 gawk chrpath wget cpio texinfo
    使用 apt-get install <软件名字>命令,把软件全部装上
    (自己机器上安装这些软件没有,安装的全不全,自己确认一下,或者暂时不用关注也行,稍后yocto 软件启动时候,有一个步骤会自己检查这些软件有什么没有安装,少软件不能运行的时候再回头补补也行。)
    Yocto软件准备, yocto源码包准备,uboot和kernel 源码包准备
    因为源码在国外服务器上,所以米尔把yocto软件和yocto项目源码包都下载好了在资料光盘上,uboot和kernel是米尔特殊的地方,需要解压到用户的家目录下:
    1,四个软件准备好,yocto 软件,yocto项目源码包,uboot 源码包,kernel 源码包,其中三个在光盘里 04-Source目录下:

    还有一个直接在米尔官网下载:

    2,找个放 yocto 的目录
    把 fsl-release-yocto.tar.gz 这个文件解压出来,命令是:tar xvf fsl-release-yocto.tar.gz,解压后得到fsl-release-yocto 目录,里面的就是yocto软件;
    然后把Yocto-downloads.tar 解压出来,命令是:tar xvf Yocto-downloads.tar,解压后得到一个 downloads 目录,把这个downloads 目录整体赋值到 fsl-release-yocto 目录下,当作fsl-release-yocto目录的子目录downloads;
    (为什么要放到fsl-release-yocto目录里当作子目录downloads?稍后会看到生成的配置文件中一个参数指向这个目录,所以要这么处理,米尔手册上这个地方不对,需要更正一下,有图有真相:


    然后解压uboot 和kernel到用户家目录:
    命令tar xvf MYiR-iMX-uboot.tar.bz -C ~
    命令tar xvf MYiR-iMX-Linux.tar.gz -C ~
    解压后在家目录下找找源码看看:

    (为什么要放在家目录下,放在其他目录行不行?当然可以,但是放在其他目录需要改设置,米尔已经把 bb 文件定位到家目录了,所以直接放到家目录下就好,看到有人在家目录下方一个链接指向实际的源码,这样也行,都可以,有图有真相,看看 bb 文件:
    Uboot bb 文件:

    Kernel bb文件 也是这么定位到家目录的。)
    到此准备工作全部做完了,接下来就可以开始编译了。
    .
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-11-19 10:40 , Processed in 0.114418 second(s), 18 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.