J'essaie d'emballer une application Qt 5.x comme décrit dans https://packing.ubuntu.com/html/packaging-new-software.html
[.____] Ma construction dépend du fichier debian/control
Sont:debhelper-compat (= 13), libqt5widgets5 (>=5.4), libqt5xml5 (>=5.4), libqt5gui5 (>=5.4), libqt5core5a (>=5.4), libtiff5 (>=4.0.3), libjpeg8 (>=8c), libgcc1 (>=1.3.0), libc6 (>=2.14), libpng16-16 (>=1.6.2-1), libstdc++6 (>=5.2)
[.____] Je bâche Deb avec bzr builddeb -- -us -uc
Malheureusement, construire le processus échoue à la BCS, il essaie de lancer des cas de test après la compilation binaire et l'un d'entre eux s'écrase. L'étui à tester utilise QPainter
qui nécessite une instance de QApplication
pour fonctionner. Et il semble que l'application se bloque à la création de QApplication
. La sortie est:
qt.qpa.xcb: could not connect to display
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Available platform plugins are: wayland-org.kde.kwin.qpa, dxcb, eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, xcb.
Je suppose donc que BZR essaie d'exécuter l'application dans un environnement propre qui est fabriqué en fonction de ma liste Build-dépend. Et cette liste manque quelque chose qui est requis par qt5/plugins/platforms/libqxcb.so
.
La question est la suivante: que peut-il être et comment suivre cela en bas?
[.____], je peux exécuter ldd
sur ma machine, mais j'en ai besoin dans l'environnement BZR.
Voici le journal de construction https://pastebin.com/bvbzvwr6 J'ai découpé un processus de compilation pour adapter les limites de la taille de la pâte. Mais la compilation va bien, c'est un test qui échoue. Le code des tests est ici: https://cutt.ly/bgyqito
L'environnement de construction est le minimum propre qui n'a pas de serveur d'affichage (X11, Wayland). QT semble échouer sur la détection d'un serveur d'affichage.
Je soupçonne que ces tests d'image lancent des outils nécessitant des fonctionnalités de bureau.
Parce que c'est l'essai initial d'emballer.
export DH_VERBOSE=1
au sommet de debian/rules
déposer.override_dh_auto_test:
Référence: https://www.debian.org/doc/manuals/maint-Guide/DREQ.en.html#rules
Si vous réussissez, essayez d'activer les tests qui ne nécessitent que le serveur en premier. Pour des tests complets avec un serveur d'affichage, honnêtement, je n'ai pas eu l'expérience, je n'ai pas été confrontée à ce cas auparavant. Soit tous les packages désactivent cela ou une solution que je n'ai pas remarquée.