如何在 Ubuntu 上使用 Yocto 创建自己的 Linux 发行版如何在 Ubuntu 上使用 Yocto 创建自己的 Linux 发行版如何在 Ubuntu 上使用 Yocto 创建自己的 Linux 发行版如何在 Ubuntu 上使用 Yocto 创建自己的 Linux 发行版
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 Ubuntu 上使用 Yocto 创建自己的 Linux 发行版

在此页

  1. 开发机器的先决条件
  2. Yocto 编译和构建过程

在本文中,我们的重点是在 Ubuntu 平台上使用 Yocto 项目创建一个最小的 Linux 发行版。 Yocto 项目因其灵活性和易用性而在嵌入式 Linux 世界中非常有名。 Yocto 项目的目的是为嵌入式硬件和软件制造商创建一个 Linux 发行版。将为 qemu 创建一个新的最小 Linux 发行版作为(qemu 是一个基本的软件模拟器)目标机器,我们将在 qemu 中运行它。

开发机器的先决条件

  • 至少 4 - 6 GB 内存。
  • 最新的 Ubuntu 操作系统(在本例中为 16.04 LTS)。
  • 磁盘上至少有 60-80 GB 的可用空间。
  • 在创建新的 Linux 发行版之前安装以下软件包。
  • 下载最新的 Yocto(最小开发环境 Poky)稳定分支。

apt-get update
apt-get install wget git-core unzip make gcc g++ build-essential subversion sed autoconf automake texi2html texinfo coreutils diffstat python-pysqlite2 docbook-utils libsdl1.2-dev libxml-parser-perl libgl1-mesa-dev libglu1-mesa-dev xsltproc desktop-file-utils chrpath groff libtool xterm gawk fop

如下所示,安装所需的开发包需要近 1 GB 的空间。

在本教程中,在系统上克隆了 poky 的“morty”稳定版本。

 git clone -b morty git://git.yoctoproject.org/poky.git

进入 \poky\ 目录并运行以下命令来设置/导出一些用于 yocto 开发的变量。

source oe-init-build-env

如下所示,运行open embedded (oe) 构建环境脚本后,终端中的路径位置将更改为“build”目录,以便进一步配置和编译新发行版。

上面的屏幕截图显示在 \conf\ 目录中创建了 \local.conf\ 文件。这是 yocto 的配置文件,它指定目标机器的详细信息和所需架构的 SDK 等。

如下图,设置目标机器\qemux86-64\。

取消注释 \local.conf\ 文件中的以下参数,如屏幕截图所示。

DL_DIR ?= "${TOPDIR}/downloads"
SSTATE_DIR ?= "${TOPDIR}/sstate-cache"
TMPDIR ?= "${TOPDIR}/tmp"
PACKAGE_CLASSES ?= "package_rpm"
SDKMACHINE ?= "i686"

如下所示,为基于 Yocto 的 Linux 设置一个空白密码,并在 local.conf 文件中包含以下参数。否则,用户将无法登录新发行版。

EXTRA_IMAGE_FEATURES ?= "debug-tweaks"

我们没有使用任何 GUI 工具,例如 toaster(不再支持 hob)来创建 Linux 操作系统。

Yocto 编译和构建过程

现在运行 bitbake 实用程序的以下命令,开始为选定的目标机器下载和编译包。

bitbake core-image-minimal

以普通 Linux 用户而不是 root 用户身份运行上述命令很重要。如以下屏幕截图所示,当您以根用户身份运行 bitbake 命令时会生成错误。

再次运行环境变量导出脚本 (oe-init-build-env) 并重新运行相同的命令以开始下载和编译过程。

如下所示,构建脚本实用程序的第一步是解析配方。

以下屏幕截图显示了构建脚本的解析步骤的完成。它还显示了将生成新的基于 yocto 的发行版的构建系统的详细信息。

下载SDK和必要的库后,下一步就是下载和编译包。以下屏幕截图显示了新分发的任务。此步骤需要 2-3 小时,因为首先,它会下载所需的包,然后针对新的 Linux 发行版进行编译。

以下屏幕截图显示了任务列表的完成情况。

为目标机器类型 \qemux86-64\ 编译的新镜像位于 \build/tmp/deploy/images/qemux86-64\ 路径中,如下所示。

如下图,上面的命令在Putty中运行会报错。

上面的命令在 Ubuntu 平台上通过 rdp 再次在终端内运行。

为基于 yocto 的新 Linux 发行版的 qemu 模拟器打开了另一个屏幕。

新发行版的登录屏幕如下所示,其中还显示了 yocto 项目的参考版本。默认用户名是 root 和空白密码。

最后,使用 root 用户名和空密码登录新发行版。如下图所示,基本命令(date、ifconfig 和 uname)在最小版本的 Linux 中运行。

本文的目的是了解使用 yocto 项目创建新 Linux 发行版的过程。

©2015-2025 艾丽卡 support@alaica.com