[Interest] Creating fat binaries for Qt6 on macOS

Dirk Hohndel dirk at hohndel.org
Wed Apr 13 18:39:25 CEST 2022



> On Apr 13, 2022, at 03:52, Sze Howe Koh <szehowe.koh at gmail.com> wrote:
>>> 
>>> My guess is that it has to be explicit on your side because Metal has some
>>> advantage that OpenGL doesn't. I wouldn't know what, since it's not an area I
>>> pay attention to.
>>> 
>> 
>> :-)
>> 
>> So instead of defaulting to something that works, Qt defaults to something that
>> may have some vague advantage that you aren't certain about.
>> 
>> Solid reasoning. 🤣
> 
> Apple has let their OpenGL implementation stagnate since 2010 [1].
> They then officially deprecated it in 2018, citing significant
> advantages of Metal over OpenGL [2]. They have not revealed when
> OpenGL will be removed.
> 
> Most of Qt Quick works well with Metal -- it's only QQuickWidget that
> doesn't. In contrast, the graphics API setting affects all of Qt
> Quick. Furthermore, QQuickWidget has limitations [3] compared to other
> ways of displaying a Qt Quick UI, so it shouldn't be the first choice
> unless you really need to mix widgets with Qt Quick.

Thanks for that explanation. I really appreciate it.
Yes, this is a complex classic Qt application (started in the days of Qt4) with a ton
of widget based code, which uses QtQuick for two specific purposes (maps and
statistics) embedded into the widget UI. So we do need to use QQuickWidget, I believe.
If there's another way to do this, please let me know!

> Given all this, I don't think it makes sense for Qt to default to
> something that can be killed off any day now, just to make it easier
> to use QQuickWidget.

Yes, you are correct. I apologize for my snarky remark, based on partial
information.

> In any case, I think the error message "QQuickWidget is only supported
> on OpenGL. Use QQuickWindow::setGraphicsApi() to override the default"
> is clear enough as a once-off message for those who want to use
> QQuickWidget.

Yes

/D


More information about the Interest mailing list