怎样使用Yocto项目为树莓派构建GNU / Linux发行版

电子说

1.3w人已加入

描述

步骤1:准备就绪

树莓派

对于本教程,您将需要:

个人计算机使用GNU/Linux发行版,例如Ubuntu,您将在其上为Raspberry Pi构建GNU/Linux发行版。

Raspberry Pi

microSD或SD卡,具体取决于Raspberry Pi的版本

HDMI电缆和监视器

USB键盘

电源

根据您的GNU/Linux发行版,在您的个人计算机上安装所需的软件包:http://www.yoctoproject.org/docs/2.0/yocto -projec 。..

注释(由Yunus EmreI撰写):

如果主目录已加密,则无法烘烤图像,因为它不允许长文件名

如果连接速度较慢,则初始构建会花费很长时间

在将映像刷新到SD卡时,请确保选择主/dev/sdX ,而不是/dev/sdXp1或内部零件的其他变体

步骤2:获取源代码

树莓派

执行以下操作在您的个人计算机上:

使用Git克隆Poky(在这种情况下,我正在下载Yocto项目的发行版Jethro(2.0)):git clone -b jethro git://git.yoctoproject.org/poky

Go到poky目录:cd poky

克隆元- raspberrypi:git clone -b jethro git://git.yoctoproject.org/meta-raspberrypi

步骤3:配置

树莓派

初始化构建环境source oe-init-build-env

将 meta-raspberrypi 添加到 conf/bblayers.conf 中的 BBLAYERS 中,然后类似于(但在您的情况下使用不同的路径)类似于:BBLAYERS ?= “ \

/home/leon/poky/meta \

/home/leon/poky/meta-yocto \

/home/leon/poky/meta-yocto-bsp \

/home/leon/poky/meta-raspberrypi \

打开 conf/local.conf 并将 MACHINE 更改为 raspberrypi , raspberrypi0, raspberrypi2 或 raspberrypi3 取决于您的Raspberry Pi型号,例如:MACHINE ??= “raspberrypi2”

将以下行添加到 conf/local.conf 以设置兆字节的GPU内存:GPU_MEM = “16”

(可选)将以下行添加到 conf/local.conf 将System V替换为 systemd :DISTRO_FEATURES_append = “ systemd”

VIRTUAL-RUNTIME_init_manager = “systemd”

DISTRO_FEATURES_BACKFILL_CONSIDERED = “sysvinit”

VIRTUAL-RUNTIME_initscripts = “”

(可选)将以下行添加到 conf/local。 conf ,将命令行网络管理器 connman 包含在图像:IMAGE_INSTALL_append = “ connman connman-client ”

步骤4:构建图像

树莓派

执行以下命令为您的Raspberry Pi构建GNU/Linux发行版的最小映像:bitbake rpi-basic-image

请注意,根据所用硬件的不同,构建过程最多可能需要几个小时。您的个人计算机和Internet连接的速度。

步骤5:闪存SD卡

构建完成后,图像将位于以下路径中在您的构建目录中: tmp/deploy/images/raspberrypi2/rpi-basic-image-raspberrypi2.rpi-sdimg。

将microSD卡插入计算机,将X替换为其相应的ID(可通过lsblk或fdisk -l等命令找到该ID),然后执行以下命令以刷新其上的映像:sudo umount /dev/sdX

sudo dd if=tmp/deploy/images/raspberrypi2/core-image-weston-raspberrypi2.rpi-sdimg of=/dev/sdX

sync

sudo umount /dev/sdX

或者,如果您愿意,可以使用 bmaptool 代替 dd 。

请特别注意闪烁SD卡,并确保您使用正确的字母表示设备的路径。这样做需要您自担风险,并请记住,错误可能会损坏个人计算机上的驱动器!

步骤6:引导和测试

引导Raspberry Pi并执行以下步骤,以验证映像是否正常工作:

以root用户身份登录而没有任何密码

如果已安装connman,请验证其systemd服务已加载:systemctl status -l connman
        责任编辑:wv 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分