Skip to content
  • 0 Votes
    9 Posts
    2k Views
    M

    @d_mcknight This issue is indeed specific to Ubuntu 22.04, I came across it today. The solution is to do sudo apt upgrade first. After it, qtbase5-private-dev is not trying to uninstall the whole system anymore.

  • 0 Votes
    7 Posts
    4k Views
    SGaistS

    AFAIK, the BPI is very close to the Raspberry Pi, you should take a look at this wiki entry.

    By the way, why are you trying to build an outdated version of Qt ? The current LTS is the 5.9 series with 5.12 around the corner.

  • 0 Votes
    5 Posts
    2k Views
    SGaistS

    Then why not install the suggested module ?

  • 0 Votes
    2 Posts
    893 Views
    Cleiton BuenoC

    Are you using which Yocto branch?
    Could you tell the MACHINE and the bblayers you're using?

  • 0 Votes
    9 Posts
    7k Views
    X

    I also encountered this problem. It can be solved by manually adding the following definition of this structure (from Raspberry Pi Video Core API) into EGL/eglplatform.h (adding additional definition will not break compilation on non-legacy code that does not use this structure). And you also need to add the definition of DISPMANX_ELEMENT_HANDLE_T before that. i.e.,

    typedef uint32_t DISPMANX_ELEMENT_HANDLE_T; typedef struct { DISPMANX_ELEMENT_HANDLE_T element; int width; /* This is necessary because dispmanx elements are not queriable. */ int height; } EGL_DISPMANX_WINDOW_T;

    After doing this, you will still encounter a few compilation errors in pointer casting. You can just forcefully cast all pointers over (or copy my code ). The compilation should proceed then.
    The reason why the compilation breaks is because in the open-source community, many developers still come from private companies working on proprietary projects. Some need to show to their boss that they have done something, so they unnecessarily keeps changing definitions, names, removing structures they do not know about due to their ignorance on other platforms/architectures (so they can say "oh, I did code-base clean-up"). In the end, it causes massive compilation breaks/failures. However, the underlying code is still the same, that is why directly casting pointers over surprisingly works out in the end, which should not be the case if substantial development is present. In summary, the No.1 development principle is that code modification should be made as minimal as possible and should exist if and only if necessary.

  • 0 Votes
    5 Posts
    2k Views
    VRoninV

    1st of all, thanks for your effort, I use LyX myself.

    The doc says:

    this indicates that the widget will paint over its entire area with opaque colors. The widget's area will initially be uninitialized

    set the widget's Qt::WA_OpaquePaintEvent, avoiding any unnecessary overhead associated with repainting the widget's background

    Meaning it is saying it won't bother painting a background but it's not committing to leaving the old painted background in place so I still think you are relying on undefined behaviour.

    On the other hand, I think this also impacts the performance of widgets with Qt::WA_OpaquePaintEvent on macOS so it is probably worth highlighting it with a bug report and/or an email on the mailing list