2 votes

Pourquoi l'erreur make a-t-elle disparu après le re-bitbkake ?

J'essaie de compiler AGL guppy avec Qt 5.15. J'ai donc forké le fichier meta-qt5 .

et ajouter ma configuration personnalisée 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"

le premier bitbake donne une erreur :

| 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....

mais lorsque j'ai refait un bitbake, l'erreur a disparu.

Je pense que c'est parce que j'utilise le multi-thread (j8) et que l'ordre de dépendance de qtbase La recette n'était pas la bonne. Comment éviter cela ?

0voto

Pablo Yaggi Points 654

Il y a deux choses qui peuvent faire que ce comportement se produise, du moins dans mon expérience, les deux se produisent lorsque vous avez un projet de sous-dossier :

  1. Lorsque, comme vous l'avez dit, le projet du sous-dossier a un mauvais ordre pour les sous-projets, vous corrigez cela en arrangeant l'ordre dans le .pro . Pour que cela se produise, il n'est pas important que vous compiliez en multi-thread ou non. (vous pouvez également appliquer la solution de la dépendance)
  2. Lorsque vous compilez un projet multithread et un sous-projet, terminez la compilation avant le premier. Vous pouvez contourner ce problème en compilant à nouveau et en assignant des dépendances dans le fichier pro du sous-dossier, comme ceci :

    SUBDIRS += SubA SubB SubC SubD ... SubC.depends = SubA SubB

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X