i.MX6ULL yocto build fail (porting LVGL)

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

i.MX6ULL yocto build fail (porting LVGL)

2,371 次查看
jinho1
Contributor I

As you know, i.MX6ULL use cairo graphic library.
I'm trying to port LVGL(Light and versatile graphic library) to i.MX6ULL instead of cairo graphic library, but it's not easy.
Below is the build error log.
I think the dependency is making the error.
(LVGL conflicts with other modules or LVGL requires another module)
Can you help me?

<error log>
ERROR: imx-image-core-1.0-r0 do_rootfs: Unable to install packages. Command '/home/worker/nxp_imx6ullevk_lelp/bld-wayland/tmp/work/imx6ull14x14evk-poky-linux-gnueabi/imx-image-core/1.0-r0/recipe-sysroot-native/usr/bin/apt-get install --allow-downgrades --allow-remove-essential --allow-change-held-packages --allow-unauthenticated --no-remove apt curl dpkg firmwared imx-test lvgl packagegroup-base-extended packagegroup-core-boot packagegroup-core-nfs-server packagegroup-core-sdk packagegroup-core-ssh-dropbear packagegroup-core-standalone-sdk-target packagegroup-core-tools-debug packagegroup-core-tools-profile packagegroup-core-weston packagegroup-fsl-optee-imx packagegroup-imx-core-tools packagegroup-imx-security run-postinsts' returned 100:
Reading package lists...
Building dependency tree...
Reading state information...
Package lvgl is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'lvgl' has no installation candidate

ERROR: Logfile of failure stored in: /home/worker/nxp_imx6ullevk_lelp/bld-wayland/tmp/work/imx6ull14x14evk-poky-linux-gnueabi/imx-image-core/1.0-r0/temp/log.do_rootfs.1569173
ERROR: Task (/home/worker/nxp_imx6ullevk_lelp/sources/meta-imx/meta-sdk/recipes-fsl/images/imx-image-core.bb:do_rootfs) failed with exit code '1'


Below is code change and build option

<source change>
diff --git a/meta-sdk/conf/distro/fsl-imx-fb.conf b/meta-sdk/conf/distro/fsl-imx-fb.conf
index 2688c75b0..26f0637c5 100644
--- a/meta-sdk/conf/distro/fsl-imx-fb.conf
+++ b/meta-sdk/conf/distro/fsl-imx-fb.conf
@@ -6,4 +6,5 @@ include conf/distro/include/fsl-imx-preferred-env.inc
DISTRO = "fsl-imx-fb"

# Remove conflicting backends.
-DISTRO_FEATURES:remove = "x11 wayland directfb "
+DISTRO_FEATURES:remove = "x11 directfb "
+DISTRO_FEATURES:append = " wayland pam"
diff --git a/meta-sdk/recipes-fsl/images/imx-image-core.bb b/meta-sdk/recipes-fsl/images/imx-image-core.bb
index 021802ed5..e94916981 100644
--- a/meta-sdk/recipes-fsl/images/imx-image-core.bb
+++ b/meta-sdk/recipes-fsl/images/imx-image-core.bb
@@ -37,4 +37,5 @@ IMAGE_INSTALL += " \
${CLINFO} \
${DOCKER} \
"
+#CORE_IMAGE_EXTRA_INSTALL += "lvgl"


<build option>
cd /home/worker/nxp_imx6ullevk_lelp
MACHINE=imx6ull14x14evk DISTRO=fsl-imx-fb source ./imx-setup-release.sh -b bld-wayland
bitbake imx-image-core

0 项奖励
回复
4 回复数

1,392 次查看
alice_a
Contributor I

I ran across this issue trying to add support for LVGL to an i.MX8M Plus build. The reason "lvgl" can't be added directly as an image append in a Yocto build is because it doesn't actually install anything to the rootfs, such as a dynamically linked .so library. So whatever application you want to build that needs LVGL support has to statically link to the header and source files, and then build it into the application at compile time.

This article was a really helpful example of linking a Gui Guider application against the LVGL library using the imx-image-multimedia SDK:

https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/Build-GUI-Guider-projects-for-iMX93-BSP-...

0 项奖励
回复

2,352 次查看
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello,

It looks like the lvdl is not supported by i.MX6ULL, lvdgl is found on several processor bteween nxp but not in mx6.

https://www.nxp.com/design/software/development-software/gui-guider:GUI-GUIDER?_gl=1*nulvd4*_ga*OTQ4....

 

Regards

0 项奖励
回复

2,300 次查看
Jonny_T
Contributor II

I don't believe this to be true.

We hit the same issue but on the 7ulp.

The lvgl recipe isn't a package so bitbake fails to add it to the image. The "dialog-lvgl" works as it depends on the lvgl recipe, so you can add "dialog-lvgl" to your "IMAGE_INSTALL:append =" list but not "lvgl" or "lv-drivers".

you could ethier add the lvgl as a depends inside your .bb file (look at dialog-lvgl as example) or you can use the yocto extSDK's  "devtool sdk-install" command to add the "lvgl" recipe to the targets sysroot to build with that.

we found it easier to just cross compile the lvgl library with our application and lv-drivers separately using the yocto SDK and then add that to image later.

0 项奖励
回复

1,471 次查看
mayqueen
Contributor IV

Maybe you can refer this video:
https://www.youtube.com/watch?v=B2_YF99YrIs

It seems running LVGL on IMX6UL five years ago... 

0 项奖励
回复