【问题标题】:Why the make error disappeared after re-bitbkake?为什么重新bitbkake后make错误消失了?
【发布时间】:2020-10-16 18:37:59
【问题描述】:

我正在尝试使用 Qt 5.15 编译 AGL guppy。 所以我分叉了meta-qt5

并添加我的自定义配置qtbase_git.bbappend:

PACKAGECONFIG += "eglfs gl gles2 linuxfb kms libinput"
PACKAGECONFIG[vsp2] = "-feature-vsp2,-no-feature-vsp2,v4l-utils,libv4l"
PACKAGECONFIG += "vsp2"
PACKAGECONFIG[gbm] = "-gbm,-no-gbm,libgbm"
PACKAGECONFIG += "gbm"

第一次 bitbake 出错:

| cd eglfs_kms_support/ && ( test -e Makefile || /mnt/jiu/workspace_m3n-salvator-xs/build/tmp/work/aarch64-agl-linux/qtbase/5.15.1+gitAUTOINC+075d971fea-r0/recipe-sysroot-native/usr/bin/qmake -o Makefile /mnt/jiu/workspace_m3n-salvator-xs/build/tmp/work/aarch64-agl-linux/qtbase/5.15.1+gitAUTOINC+075d971fea-r0/git/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/eglfs_kms_support.pro -qtconf /mnt/jiu/workspace_m3n-salvator-xs/build/tmp/work/aarch64-agl-linux/qtbase/5.15.1+gitAUTOINC+075d971fea-r0/build/bin/qt.conf ) && make -f Makefile
| cd eglfs_kms_vsp2/ && ( test -e Makefile || /mnt/jiu/workspace_m3n-salvator-xs/build/tmp/work/aarch64-agl-linux/qtbase/5.15.1+gitAUTOINC+075d971fea-r0/recipe-sysroot-native/usr/bin/qmake -o Makefile /mnt/jiu/workspace_m3n-salvator-xs/build/tmp/work/aarch64-agl-linux/qtbase/5.15.1+gitAUTOINC+075d971fea-r0/git/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/eglfs_kms_vsp2.pro -qtconf /mnt/jiu/workspace_m3n-salvator-xs/build/tmp/work/aarch64-agl-linux/qtbase/5.15.1+gitAUTOINC+075d971fea-r0/build/bin/qt.conf ) && make -f Makefile
| cd eglfs_emu/ && ( test -e Makefile || /mnt/jiu/workspace_m3n-salvator-xs/build/tmp/work/aarch64-agl-linux/qtbase/5.15.1+gitAUTOINC+075d971fea-r0/recipe-sysroot-native/usr/bin/qmake -o Makefile /mnt/jiu/workspace_m3n-salvator-xs/build/tmp/work/aarch64-agl-linux/qtbase/5.15.1+gitAUTOINC+075d971fea-r0/git/src/plugins/platforms/eglfs/deviceintegration/eglfs_emu/eglfs_emu.pro -qtconf /mnt/jiu/workspace_m3n-salvator-xs/build/tmp/work/aarch64-agl-linux/qtbase/5.15.1+gitAUTOINC+075d971fea-r0/build/bin/qt.conf ) && make -f Makefile
| Project ERROR: Unknown module(s) in QT: eglfs_kms_support-private
| Makefile:125: recipe for target 'sub-eglfs_kms_vsp2-make_first' failed
| make[5]: *** [sub-eglfs_kms_vsp2-make_first] Error 3
| make[5]: *** Waiting for unfinished jobs....

但是当我重新bitbake时,错误消失了。

我认为这是因为我使用的是多线程(j8)并且qtbase配方的依赖顺序是错误的。 那么如何避免呢?

【问题讨论】:

    标签: qt5 yocto


    【解决方案1】:

    至少在我的经验中,有两件事可以使这种行为发生,当您有一个子目录项目时都会发生:

    1. 当如您所说,子目录项目的子项目顺序错误时,您可以解决在 .pro 中安排顺序的问题。为此,无论您是否在多线程中编译都没有关系。 (也可以应用依赖解决方案)
    2. 当您编译多线程并且一个子项目在一个优先级之前完成编译。您再次解决该编译问题,并修复在 subdir pro 文件中分配依赖项的问题,如下所示:
    SUBDIRS += SubA SubB SubC SubD ...
    SubC.depends = SubA SubB
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多