概述
1.编译配置
$ DISTRO=MACHINE=source fsl-setup-release.sh -b
DISTRO如下:
MACHINE=imx8qmmek
-b imx8-build编译生成文件路径
$ DISTRO=fsl-imx-x11 MACHINE=imx8qmmek source ./fsl-setup-release.sh -b imx8-build
注意以下两个文件:
2.选择yocto项目编译选项
$ bitbake fsl-image-validation-imx
3.bitbake选项
4.u-boot配置
uboot一般配置UBOOT_CONFIG选项,它在local.conf文件中,默认配置是sd boot,配置选项如下:
EMMC启动则配置如下:
$ echo "UBOOT_CONFIG = "emmc"" >> conf/local.conf
5.重新打开终端需要再次运行环境变量
$ source setup-environment imx-buiild
编译生成路径:imx-yocto-bspimx8-buildtmpdeployimagesimx8qmmek
6.代码的位置
Linux的kernel的源代码在:
imx-yocto-bspimx8-buildtmpworkimx8qmmek-poky-linuxlinux-imx4.9.51-r0git
git是一个链接文件,实际的源代码在:
imx-yocto-bspimx8-buildtmpwork-sharedimx8qmmekkernel-source
u-boot的源代码的位置在
imx-yocto-bspimx8-buildtmpworkimx8qmmek-poky-linuxu-boot-imx2017.03-r0git
7. 编译出来的image的位置
编译出来的image在 imx-yocto-bspimx8-buildtmpdeployimagesimx8qmmek目录下
包括的u-boot zImage rootfs
8. 编译的log信息
在我们编译的过程中,在Terminal中是看不到编译的log信息的,那么我们怎么直到编译的时候我们的代码有没有编译到,有没有警告呢?
其实yocto已经帮我们保存了编译的log信息。
Linux kernel的编译的log就在
imx-yocto-bspimx8-buildtmpworkimx8qmmek-poky-linuxlinux-imx4.9.51-r0temp
目录下。
例如 log.do_compile就是编译内核的log信息 。
u-boot的编译的log就在imx-yocto-bspimx8-buildtmpworkimx8qmmek-poky-linuxu-boot-imx2017.03-r0temp目录下
其他的也类似在对应的目录的temp目录下。
9. 如何单独编译kernel和u-boot
我们修改了kernel或者u-boot的源代码,直接运行bitbake fsl-image-qt5是不会编译我们修改的源代码的。所以就需要我们单独编译源代码。
配置menuconfig
bitbake -c menuconfig -v linux-imx
单独编译kernel
bitbake -c compile -f -v linux-imx
bitbake linux-imx -c compile_kernelmodules -f -v
bitbake -c deploy -f -v linux-imx
bitbake fsl-image-validation-imx
执行上面的命令将重新编译内核、设备树、模块。并且重新生成rootfs 。
实际上我们修改了内核,实际上往往不需要更新rootfs的,而我们 执行bitbake fsl-image-validation-imx时会重新生成rootfs,这个操作会耗费很长的时间。
所以我们也可以只执行
bitbake -c compile -f -v linux-imx
bitbake linux-imx -c compile_kernelmodules -f -v
bitbake -c deploy -f -v linux-imx
这两个命令,然后再自己把zImage和设备树文件拷出来。
执行上面个三个命令编译出来的zImage和设备树在
imx-yocto-bspimx8-buildtmpworkimx8qmmek-poky-linuxlinux-imx4.9.51-r0deploy-linux-imx
目录下。
单独编译u-boot
bitbake -c compile -f -v u-boot-imx
bitbake -c deploy -f -v u-boot-imx
bitbake fsl-image-validation-imx
同样单独编译完u-boot,执行bitbake fsl-image-validation-imx时会重新生成rootfs,会耗费很长的时间。
所以我们也可以只执行
bitbake -c compile -f -v u-boot-imx
bitbake -c deploy -f -v u-boot-imx
然后把u-boot拷出来
编译出来的u-boot在
imx-yocto-bspimx8-buildtmpworkimx8qmmek-poky-linuxu-boot-imx2017.03-r0deploy-u-boot-imx目录下。
最后
以上就是会撒娇山水为你收集整理的linux imx源码下载,imx8qm Linux L4.9.51 BETA2源码下载及编译环境搭建的全部内容,希望文章能够帮你解决linux imx源码下载,imx8qm Linux L4.9.51 BETA2源码下载及编译环境搭建所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复