yocto从概念安装到应用

本文详细介绍了Yocto项目,包括其功能、安装步骤、关键概念和灵活使用方法。Yocto是一个用于自定义Linux系统的开源构建环境,简化了嵌入式产品的开发流程。文章涵盖了在CentOS下安装Yocto的步骤,涉及依赖包的安装、环境变量设置、同步yocto库和编译选项的选择。此外,还讨论了在使用过程中可能遇到的问题及解决方案,以及如何在Yocto中修改内核配置、添加设备树和软件包,以及制作SDK。
摘要由CSDN通过智能技术生成

yocto从概念安装到应用

一、yocto的功能及组成

yocto是一个开源项目,该项目旨在帮助我们自定义linux系统。它只是一个构建环境,可以通过yocto编译出image,image就是你要烧录到板卡硬件的可执行程序;也可以不用yocto,就用Makefile构建也是一样的,只是选择的构建方法不同而已,最终目的都是得到image。

使用该项目的原因(优点):该项目提供模板、工具和方法帮助我们创建定制的linux系统的嵌入式产品,而无需关心硬件体系,适合嵌入式开发人员使用,极大地简化了开发的过程,因为不用从头裁剪一个包含很多并不需要的完整的linux发布版本。

二、yocto的安装与使用过程

本人所安装的系统为centos,编译所需要的空间至少120G,需要在非root用户执行以下指令(注意不要用root用户去搭建yocto环境)需要VPN访问外网

以在centos系统下,将yocto安装到/data/yocto文件下为例,以下是安装和编译步骤:
①安装所需要的功能包(不同linux系统所需的依赖包不同,以centos为例)

 $ sudo yum -y groupinstall "development tools"
        $ sudo yum -y install tetex gawk sqlite-devel vim-common redhat-lsb xz \
          m4 make wget curl ftp tar bzip2 gzip python-devel \
          unzip perl texinfo texi2html diffstat openjade zlib-devel \
          docbook-style-dsssl sed docbook-style-xsl docbook-dtds \
          docbook-utils bc glibc-devel pcre pcre-devel \
          groff linuxdoc-tools patch cmake \
          tcl-devel gettext ncurses apr \
          SDL-devel mesa-libGL-devel mesa-libGLU-devel gnome-doc-utils \
          autoconf automake libtool xterm

②创建文件(不同的工程需要不同的文件夹,此处是imx8QMCP工程)


```cpp
[aertp@localhost yocto]$ cd /data/yocto
[aertp@localhost yocto]$ mkdir bin
[aertp@localhost yocto]$ mkdir imx8QMCPU
[aertp@localhost yocto]$ ls


③获取repo工具包(工具为git的封装)

```cpp
[aertp@localhost yocto]$ cd bin
[aertp@localhost bin]$ curl https://storage.googleapis.com/git-repo-downloads/repo > /data/yocto/bin/repo

④设置repo的环境变量,设置git命令用以获取的邮箱(需要设置GitHub有效的用户名以及对应的邮箱)

[aertp@localhost bin]$ chmod a+x /data/yocto/bin/repo 
[aertp@localhost bin]$ export PATH=/data/yocto/bin:$PATH 
[aertp@localhost bin]$ git config --global user.name "yourname"
[aertp@localhost bin]$ git config --global user.email "yourmail"
[aertp@localhost bin]$ git config --list

⑤获取yocto库的清单文件,并同步到本地仓库(本例所选的yocto版本为:L4.14.98-2.0.0)

[aertp@localhost bin]$ cd ..
[aertp@localhost yocto]$ cd imx8QMCPU/
[aertp@localhost imx8QMCPU]$ repo init -u https://source.codeaurora.org/external/imx/imx-manifest -b imx-linux-zeus -m imx-5.4.24-2.1.0.xml
[aertp@localhost imx8QMCPU]$ repo sync

//同步命令需要在网速极好的环境下进行

⑥开始编译自己所对应硬件芯片对应的image (按照自己的需求,设置所需要的选项)

[aertp@localhost imx8QMCPU]$ DISTRO=<distro name> MACHINE=<machine name> source imx-setup-release.sh -b <build dir>
//此过程产生配置文件
//imx-setup-release.sh是启动脚本,在当前目录下
//我的选择是fsl-imx-xwayland,imx8qmmek
//因此我的命令如下:
//[aertp@localhost imx8QM
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值