pentobi fails to startup in Ubuntu 19.04 beta

Bug #1824560 reported by enz on 2019-04-12
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
pentobi (Ubuntu)
Status tracked in Eoan
Disco
High
Unassigned
Eoan
High
Unassigned

Bug Description

[Impact]

The application fails to start up.

This is because the executable contains precompiled QML code that will only work with a certain version of Qt. As a package maintainer, I was unaware of the dependency and did not know a rebuild after any Qt update would be necessary.

The fix is to disable QML precompilation.

[Test Case]

1. Open a console window.
2. Start the application by giving the command `pentobi`.
3. The game window should open.

[Regression Potential]

The patch changes how QML files are embedded in the executable: precompiled code to source form. If something were wrong with e.g. qrc paths (Qt Resource Compiler) in the patch, the game window would still not be displayed. However, that is not any worse that the current state of the package.

[Original Report by Upstream Maintainer enz]

I just installed the pentobi package in Ubuntu 19.04 beta and it fails to start up with the error message

  QQmlApplicationEngine failed to load component
  qrc:/qml/Main.qml:-1 File was compiled ahead of time with an incompatible
  version of Qt and the original file cannot be found. Please recompile

I'm not sure if this is a temporary problem or if something needs to be fixed in the packaging. Pentobi 16.2 uses the QtQuickCompiler, which requires that the QML files are precompiled with the exact same version of Qt as is used at runtime, so pentobi needs to be recompiled whenever the Qt libraries are changed.

If using the QtQuickCompiler is inconvenient for packaging, it can be disabled by replacing "qtquick_compiler_add_resources" by "qt5_add_resources" in src/pentobi/CMakeLists.txt

Juhani Numminen (jsonic) on 2019-04-23
Changed in pentobi (Ubuntu):
status: New → In Progress
Juhani Numminen (jsonic) wrote :

Thank you for the report Markus.

I see that you decided to not use QtQuickCompiler in the upstream project.

Since 19.04 is released already, I plan to fix this in two stages:

* upload version 16.3-1 to Debian Experimental and request its sync to Ubuntu 19.10
* apply patch to disable the QtQuickCompiler and upload 16.2-1ubuntu0.1 for Ubuntu 19.04 as an SRU

SRU: https://wiki.ubuntu.com/StableReleaseUpdates

Juhani Numminen (jsonic) on 2019-04-24
description: updated
Juhani Numminen (jsonic) wrote :

Dear Ubuntu sponsors,
Here is my proposed debdiff for this upload.

Juhani Numminen (jsonic) wrote :

Dear Ubuntu sponsors,
Here is my proposed debdiff for this upload.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package pentobi - 16.3-1

---------------
pentobi (16.3-1) experimental; urgency=medium

  * New upstream release.
    - QtQuickCompiler was disabled to avoid the need for recompilation
      for different versions of Qt (LP: #1824560).

 -- Juhani Numminen <email address hidden> Tue, 23 Apr 2019 11:14:26 +0300

Changed in pentobi (Ubuntu):
status: In Progress → Fix Released
Changed in pentobi (Ubuntu Disco):
status: New → Confirmed
Changed in pentobi (Ubuntu Disco):
importance: Undecided → High
Changed in pentobi (Ubuntu Eoan):
importance: Undecided → High

sponsored in unapproved queue!

Changed in pentobi (Ubuntu Disco):
status: Confirmed → In Progress

Hello enz, or anyone else affected,

Accepted pentobi into disco-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/pentobi/16.2-1ubuntu0.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-disco to verification-done-disco. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-disco. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in pentobi (Ubuntu Disco):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-disco
enz (markus-enzenberger) wrote :

pentobi_16.2-1ubuntu0.1 from disco-proposed works fine for me. Thanks for fixing this bug.

tags: added: verification-done verification-done-disco
removed: verification-needed verification-needed-disco

The verification of the Stable Release Update for pentobi has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package pentobi - 16.2-1ubuntu0.1

---------------
pentobi (16.2-1ubuntu0.1) disco; urgency=medium

  * Disabled QtQuickCompiler to avoid the need for recompilation
    for different versions of Qt (LP: #1824560).

 -- Juhani Numminen <email address hidden> Tue, 23 Apr 2019 18:48:36 +0300

Changed in pentobi (Ubuntu Disco):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers