Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Can missing Qt packages cause an error to be thrown at build time instead of runtime ? #159

Open
@mdear

Description

@mdear

I'm creating a custom Yocto Poky Kirkstone Linux image on a qemuarm64 target platform and running your toolchain there (linuxdeploy + qt input plugin + appimage output plusin)

I'm packaging a Qt app that has dependence on Qt packages such as qtsensors, qtquick3d, qtquick3dphysics and qtmultimedia (the stock "Dice" example that ships with Qt6).

I just had to go through a painful process where I created AppImages only to be stopped at runtime because Qt related dependencies were missing, I then rebuilt the Yocto binary step by step, adding missing dependencies with each step, which was very time consuming.

Of course, I could have read the code, but I'm preparing procedures for an intermediate CI/CD DevOps engineer and I want the process to be as intuitive, smooth, automated and efficient as possible.

Is there a way to detect missing packages at build time instead of finding out at runtime?

A related issue is that I found that, despite my app having dependencies on libraries such as /usr/lib/libQt6Sensors.so.6 and /usr/lib/libQt6Sensors.so.6.5.3 (one and the same file, just softlinked as per usual Linux library numbering protocols), even after running the qt plugin seeing the QtSensors module and its QML dependencies being picked up this dependent system library was missing and I had to add it via the --library clause, again not the end of the world, but something that could be further automated to increase workflow productivity. This library was not in the /usr/lib/qml/QtSensors directory yet was still a runtime dependency.

I also had to manually package /usr/lib/qml/QtSensors/libsensorsquickplugin.so which I thought would have been picked up automatically.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions