Discussion:
Mac: a bit of 10.9 love
René J.V. Bertin
2017-08-03 13:18:45 UTC
Permalink
Mac OS X 10.9 and/or KDE/Mac users, greetings! :)

This has already come up here and there in bits and pieces, but I thought it wouldn't hurt to repeat it once more concisely:

Qt 5.9 dropped support for Mac OS X 10.9 . I won't dispute that, but I do regret it. Since I had already split off the 5.8 Mac widget style and Cocoa QPA plugins for standalone building I did the same with their 5.9 versions, reintroducing 10.9-specific code where required. The resulting code is in the qt590 branch at

http://github.com/RJVB/osx-integration

and builds against Qt 5.8 and 5.9.1 . I've tested the plugins quite thoroughly in everyday use with my 5.8.0 MacPorts-style Qt build; built against "stock" Qt 5.9.1 they at least allow me to run the shipped binaries (Assistant c.s.).

The initial goal for creating standalone versions of these plugins was to make my patches to them easily available to a wider audience without having to "upstream them" first. Please do let me know if any of those changes cause issues.

KDE/Mac users might also be interested in the KDE platform theme plugin also contained in the above repository (and which gave the repo its name). It's a dedicated Mac version of the Plasma Integration plugin. It defines appropriate defaults for the font and colour palettes, as well as an appropriate XDG icon theme (not included) which should improve the look and feel of KDE applications on Mac. Those settings can of course be customised and one can also define a non-standard widget style as the default, in case you prefer a homogeneous cross-platform appearance.

Hope this is of interest to at least some of you,
R.
Allan Sandfeld Jensen
2017-08-03 15:11:56 UTC
Permalink
Post by René J.V. Bertin
Mac OS X 10.9 and/or KDE/Mac users, greetings! :)
This has already come up here and there in bits and pieces, but I thought it
Qt 5.9 dropped support for Mac OS X 10.9 . I won't dispute that, but I do
regret it.
Didn't Qt only drop support for building on 10.9? I am pretty sure you should
be able to build on 10.10+ and deploy to 10.9 if you wish. Though I can see
how that might be a bit ackward for open source home builds.

' Allan
René J.V. Bertin
2017-08-03 15:31:17 UTC
Permalink
Post by Allan Sandfeld Jensen
Didn't Qt only drop support for building on 10.9? I am pretty sure you should
be able to build on 10.10+ and deploy to 10.9 if you wish. Though I can see
Nope, sadly that's not the case (and I doubt it was the intention either). You can still install Qt 5.9.1, once you figure out how to run the installer - last time I tried even the MaintenanceTool.app insisted on self-updating to a new version that crashed immediately because of missing symbols referenced from the cocoa QPA. I filed a QTBUG-61800 about that because it made it impossible to update even supported Qt versions on OS versions not supported by the latest Qt version.

The workaround trick I found was to force Qt to use the generic Unix QPA, which is good enough for basic installers but evidently not for a meaningful user experience.
Post by Allan Sandfeld Jensen
Iirc the minimum deployment version was bumped to 10.10 in qt 5.9. That was also a change we had to do in webengine
I'm expecting to run into >=10.10 requirements elsewhere in Qt 5.9 when I get around to building it, and I was already afraid that QWE would require more attention than I really care to give it (it's way too big to start hacking around in) ... But, "had to" as in "were obliged to" rather than "chose to"? Why - the BT code that already required using the 10.10 SDK maybe? All incompatibilities I've seen in the style and QPA were quite trivial to address (except for those requiring the "full" 10.10 SDK which 10.9 never got).

With some luck it will still be possible to build QWE 5.8 against Qt 5.9 though, should there be too much to reintroduce (and I wouldn't mind either dropping BT support either in my build).

R.
Alexandru Croitor
2017-08-03 15:14:52 UTC
Permalink
Iirc the minimum deployment version was bumped to 10.10 in qt 5.9. That was also a change we had to do in webengine

Alex
Post by Allan Sandfeld Jensen
Post by René J.V. Bertin
Mac OS X 10.9 and/or KDE/Mac users, greetings! :)
This has already come up here and there in bits and pieces, but I thought it
Qt 5.9 dropped support for Mac OS X 10.9 . I won't dispute that, but I do
regret it.
Didn't Qt only drop support for building on 10.9? I am pretty sure you should
be able to build on 10.10+ and deploy to 10.9 if you wish. Though I can see
how that might be a bit ackward for open source home builds.
' Allan
_______________________________________________
Interest mailing list
http://lists.qt-project.org/mailman/listinfo/inter
René J. V. Bertin
2018-03-14 12:14:39 UTC
Permalink
Allan Sandfeld Jensen wrote:


Hi,
Post by Allan Sandfeld Jensen
Didn't Qt only drop support for building on 10.9? I am pretty sure you should
be able to build on 10.10+ and deploy to 10.9 if you wish. Though I can see
how that might be a bit ackward for open source home builds.
Sadly, no. I've tested this with the official 5.9.1 and 5.9.3 builds which are
not impossible to install once you figure out how to run the MaintenanceTool
without crashing.

The underlying problem is that 10.9 never got the latest 10.10 SDK and
libraries, so code needs to be very careful in checking what 10.10 version
introduced a particular function or feature if 10.9 compatibility is required.
Qt doesn't do that, so there are a few calls made (esp. in the native Mac style)
which cause an abort in the ObjC runtime on 10.9 .

I've reintroduced the conditional code that was stripped (and made some other
code conditional) in my osx-integration repo so that the Cocoa QPA and Mac style
build and run again on 10.9 .

I've even managed to do this with their 5.10 versions, but where the 5.9 QPA and
style worked seamlessly with Qt 5.8, those 5.10 versions do not work as well
with Qt 5.9 because too many other things have changed. Including probably more
10.10+ SDK calls in QtBase and other components, so I've decided that my
"backported" 10.9 support will apply to 5.9LTS only.

R.

Loading...