本文来源电子发烧友社区,作者:XX, 帖子地址:https://bbs.elecfans.com/jishu_2302357_1_1.html
yocto 工程编译与烧录
类似于AOSP工程的编译方式,这个yocto在初始化的时候,也是会扫描所有的bb文件。
而是要从各个不同的地方(比如nxp官方的git 或者是busybox的git)下载这些源码,然后将这些源码解压,这里可以选择米尔官方已经下载好的,这样可以避免网络问题导致下载失败。将网盘上面的downloads压缩包下载之后,解压,然后放到 和source同级目录 。此时,SDK目录的文件如下图所示
下载完download之后,即可开始编译,首先要设置DISTRO 和MACHINE,对于myd j1028开发板,执行如下命令
DISTRO=nxp-real-time-edge MACHINE=mydj1028 source real-time-edge-setup-env.sh -b myir-real-edge
-b后面指定的是构建输出目录,是相对路径。
然后执行
bitbake myir-image-real-time-edge
这里的意思是,总共有6646个构建的子目标。全部完成即可得到固件。
经过漫长的等待,最终在myir-real-edge/tmp/deploy/images/mydj1028下得到固件。
这个固件可以放到EMMC执行,但是需要通过sd卡烧录,所以还要编译一个能够通过SD卡烧录的镜像
bitbake myir-image-burn
得到镜像在tmp/deploy/images/mydj1028,这里有很多链接,实际上文件名应该是myir-image-burn-mydj1028-20220826154153.rootfs.wic.bz2
将这个文件按照 https://bbs.elecfans.com/jishu_2296118_1_1.html所述的方式烧录到板上。
第一次启动,报错,有如下提示
这里的意思是它尝试把/dev/mmcblk0p1挂载到/boot。而从emmc启动时没有mmcblk0p1。可以通过如下方式修改
vi /etc/fstab
将此处的mmcblk0p1改为mmcblk1p1,mmcblk0对应sd卡槽那路sdmmc,mmcblk1对应才是emmc那路sdmmc,这里应该是myir的sdk默认从sd卡启动,后面应该在编译系统的时候就改好fstab
修改之后reboot,这次就是进入正常的系统了
到这里,系统编译就完成了
构建遇到的问题:
1、主机buildtools(host gcc等)版本不对
可以到downloads.yoctoproject.org/releases/yocto/去下载符合版本要求的。此网站有很多版本可以选择,到sources/meta-poky/conf/distro/poky.conf找到当前的版本,比如
那么版本就是3.2.1,然后到downloads.yoctoproject.org/releases/yocto/yocto-3.2.1/buildtools/下载x86_64-buildtools-extended-nativesdk-standalone-3.2.1.sh 并执行安装(实际就是把一堆可执行程序解压到那个目录)。安装之后执行一下安装文件夹下的environment-setup-x86_64-pokysdk-linux ,然后再执行bitbake即可。
2、optee编译报错
几个函数找不到定义。既然找不到定义,optee一般情况下用不上,况且这个是个host端的测试程序,那就直接干掉
在myir-real-edge/tmp/work/mydj1028-fsl-linux/optee-test-qoriq/3.10.0+gitAUTOINC+0c998f42a3-r0/git/ta/os_test/ta_entry.c
注释掉这几个函数,直接返回成功即可。注意这里的修改是在编译的目标文件夹里面修改,yocto的编译是把下载的源码压缩包(downloads里面那些)解压到构建输出目录,并且在这个目录执行编译的,那就直接修改它解压出来的源码。
3、u-boot报找不到url地址,这个是MYIR的配置文件写错
在sources/meta-myir-real-time/dynamic-layers/qoriq-layer/recipes-bsp/u-boot/u-boot-qoriq_%.bbappend 修改这两行内容
-
米尔科技
+关注
关注
5文章
227浏览量
21148 -
MYD-J1028X
+关注
关注
1文章
16浏览量
287
发布评论请先 登录
相关推荐
OpenHarmony源码编译后烧录镜像教程,RK3566鸿蒙开发板演示
![OpenHarmony源码<b class='flag-5'>编译</b>后<b class='flag-5'>烧录</b>镜像教程,RK3566鸿蒙<b class='flag-5'>开发板</b>演示](https://file1.elecfans.com/web3/M00/04/41/wKgZO2dyAH2AFFx6AAB2FN45Lh8124.png)
【米尔-Xilinx XC7A100T FPGA开发板试用】测试一
ST×米尔STM32MP25x线下培训会
![ST×<b class='flag-5'>米尔</b>STM32MP25<b class='flag-5'>x</b>线下培训会](https://file.elecfans.com/web2/M00/08/64/pYYBAGDwFEGADIPWAAFlJOlmLxg664.jpg)
FacenetPytorch人脸识别方案--基于米尔全志T527开发板
![FacenetPytorch人脸识别方案--基于<b class='flag-5'>米尔</b>全志T527<b class='flag-5'>开发板</b>](https://file.elecfans.com/web2/M00/02/C4/pYYBAGDSzfeAP86XAAAO5PbqJbI698.png)
【米尔-Xilinx XC7A100T FPGA开发板试用】+01.开箱(zmj)
米尔基于NXP iMX.93开发板的M33处理器应用开发笔记
![<b class='flag-5'>米尔</b>基于NXP iMX.93<b class='flag-5'>开发板</b>的M33处理器应用<b class='flag-5'>开发</b>笔记](https://file.elecfans.com/web2/M00/08/64/pYYBAGDwFEGADIPWAAFlJOlmLxg664.jpg)
米尔NXP i.MX 93开发板的Qt开发指南
![<b class='flag-5'>米尔</b>NXP i.MX 93<b class='flag-5'>开发板</b>的Qt<b class='flag-5'>开发</b>指南](https://file.elecfans.com/web2/M00/08/64/pYYBAGDwFEGADIPWAAFlJOlmLxg664.jpg)
评论