美容院网站建设方案书,网站联系qq代码,公司介绍文案,海南建设工程股份有限公司网站yocto 编译raspberrypi 4B并启动 yocto 编译raspberrypi 4B并启动环境准备代码下载编译及配置烧录 yocto 编译raspberrypi 4B并启动
本篇文章为基于raspberrypi 4B单板的yocto实战系列的开篇之作。
环境准备
最近到手一个树莓派4B#xff0c;准备拿来玩一玩#xff0c;下面… yocto 编译raspberrypi 4B并启动 yocto 编译raspberrypi 4B并启动环境准备代码下载编译及配置烧录 yocto 编译raspberrypi 4B并启动
本篇文章为基于raspberrypi 4B单板的yocto实战系列的开篇之作。
环境准备
最近到手一个树莓派4B准备拿来玩一玩下面记录下使用yocto构建RaspberryPi的镜像并刷写启动的过程。 首先准备主机编译环境必要组件安装
sudo apt install gawk wget git diffstat unzip texinfo gcc build-essential chrpath socat cpio python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3 xterm python3-subunit mesa-common-dev zstd liblz4-toolhttps://github.com/agherzan/meta-raspberrypi这个layer支持多个分支我们选择一个特定的分支kirkstone来进行开发最好不要用太新的分支可能会有适配问题。
代码下载
首先下载kirkstone 分支的poky源码
git clone -b kirkstone https://gitlab.com/yoctoproject/poky.git poky-kirkstone下载完成以后的产物 然后进入poky-kirkstone文件夹执行如下指令下载kirkstone 分支的meta-raspberrypi
git clone -b kirkstone https://github.com/agherzan/meta-raspberrypi.git meta-raspberrypi
下载完成以后的产物
编译及配置
首先执行如下指令创建编译工作区
source poky-kirkstone/oe-init-build-env rpi-build执行完成以后会自动进入rpi-build文件夹下
首先修改conf/bblayers.conf文件将刚才下载的meta-raspberrypi 加入编译 然后修改conf/local.conf修改编译的目标 修改MACHINE为raspberrypi4-64 如果你使用的不是raspberrypi4B这块单板根据自己的树莓派型号选择对应的machine即可。可选项为.conf之前的名字
在local.conf末尾添加一些自定义项 ############################ Add by tao #######################################IMAGE_FSTYPES ext4.xz rpi-sdimgSDIMG_ROOTFS_TYPEext4.xz## enable uartENABLE_UART1## packagesIMAGE_INSTALL:append openssh-sftp-server sudo python3 python3-pip rpi-gpio raspi-gpioIMAGE_FEATURES:append ssh-server-openssh## systemd settingsDISTRO_FEATURES:append systemdVIRTUAL-RUNTIME_init_manager systemdDISTRO_FEATURES_BACKFILL_CONSIDERED:append sysvinitVIRTUAL-RUNTIME_initscripts systemd-compat-units########################### End by tao ########################################开始编译
bitbake core-image-base此过程首次编译需要耗费多个小时根据编译主机情况决定而且需要连接外网最好挂VPN。 等待编译完成以后编译镜像在如下路径 rpi-build/tmp/deploy/images/下面的core-image-base-raspberrypi4-64-xxxxx-rootfs.rpi-sdimg
烧录
编译得到刷写的image以后将内存卡插入主机确认好SD卡对应的快设备例如我的是/dev/sda使用dd指令刷机
sudo dd if/home/a/work/raspberry/rpi-build/tmp/deploy/images/raspberrypi4-64/core-image-base-raspberrypi4-64-20240313101906.rootfs.rpi-sdimg of/dev/sda
sync完成以后将内存卡插入树梅派连接好串口raspberrypi的默认串口是Pin 8(TX) 和Pin 10(RX), 波特率115200:
上电开机可以看到串口打印如下启动日志 启动完成需要输入登陆用户root即可进入系统
这样就完成的整个流程后续需要什么包只需要自己通过yocto定制即可。DONE