"); //-->
1、安装依赖包
在编译之前安装依赖包,输入以下命令:
sudo apt-get install gawk wget git-core diffstat unzip texinfo build-essential chrpath
sudo apt-get install libsdl1.2-dev xterm
sudo apt-get install make xsltproc docbook-utils fop
sudo apt-get install autoconf automake libtool libglib2.0-dev
2、下载源码
拷贝源码“iTOP-3399 开发板\02_iTOP-3399 开发资料汇总(不含光盘内容)\13_嵌入式 Linux 开发指南(RK3399)手册配套资料\1.RK 原厂 3399 源码\3399 原厂 BSP”目录下的源码到 ubuntu 下。然后输入命令解压源码。
3、编译 yocto
输入以下命令初始化编译环境。
cd yocto/
./oe-init-build-env
输入以下命令,如下图所示:
export PATH=$PATH:/home/topeet/rk3399_linux_v2.0_210520/yocto/poky/bitbake/bin
cd build/conf
ln -sf rockchip-rk3399-sapphire-excavator.conf local.conf
cd .. bitbake core-image-minimal
接下来就是长达好几个小时的编译。在编译的过程中,最好是全程kexue上网,否则会因为网络下载问题而编译出错,如果出现下载失败的提示,重新输入 bitbake core-image-minimal 再次编译。
经过漫长的等待,终于编译完了,编译完之后如下图所示:
4、制作 yocto 镜像
编译完之后,我们进入
/home/topeet/rk3399_linux_v2.0_210520/yocto/build/tmp/deploy/images/rockchip-rk3399-sapphire-excavator/
目录下,可以看到编译生成的
core-image-minimal-rockchip-rk3399-sapphire-excavator-20211020065545.rootfs.ext4 文件。接下来我们要把此文件系统制作为 ubuntu_1604.img,然后拷贝 ubuntu_1604.img 到源码的 ubuntu 目录下,编译 ubuntu 镜像,实际上是在编译 yocto 的镜像。编译完成生成 update.img 镜像,便可以烧写 yocto镜像了。
接下来介绍如何把 core-image-minimal-rockchip-rk3399-sapphire-excavator-20211020065545.rootfs.ext4
文件制作为 ubuntu_1604.img,按如下所示输入以下命令,一种颜色代表一条命令。
cd
/home/topeet/rk3399_linux_v2.0_210520/yocto/build/tmp/deploy/images/rockchip-rk3399-sapphire-excavator/
mkdir rootfs
mount -o loop -t ext4 core-image-minimal-rockchip-rk3399-sapphire-excavator-20211020065545.rootfs.ext4
rootfs
cp -r rootfs/* yocto/
umount rootfs
mkdir tmp
dd if=/dev/zero of=ubuntu.img bs=1M count=1024 //指定 yocto 镜像的大小,可以修改
mkfs.ext4 ubuntu_1604.img
mount ubuntu_1604.img tmp/
cp -rfp yocto/* tmp/
umount tmp/
5、测试 yocto
经过上一小节制作完 yocto 镜像,烧写完毕,yocto 系统启动如下图所示:
迅为itop3399开发板:
核心板参数
底板参数
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。