Opened 6 years ago

Closed 5 years ago

#48252 closed update (fixed)

qt5-mac needs update to 5.5.0

Reported by: jakepetroules (Jake Petroules) Owned by: MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: mkae (Marko Käning), RJVB (René Bertin), mdeaudelin (Mathieu Deaudelin-Lemay), NeilGirdhar (Neil), eirnym (Arseny Nasokin), macports@…, kaveh@…, stromnov (Andrew Stromnov), anthony.gelibert@…, help@…, maehne (Torsten Maehne)
Port: qt5-mac

Description

Note that we added default-on rpath support for OS X in 5.5.0, so you'll need to explicitly turn it off in configure when building for MacPorts.

Attachments (1)

patch-for-10.11.diff (2.4 KB) - added by RJVB (René Bertin) 5 years ago.

Download all attachments as: .zip

Change History (36)

comment:1 Changed 6 years ago by Ionic (Mihai Moldovan)

Cc: mcalhoun@… removed
Owner: changed from macports-tickets@… to mcalhoun@…
Port: qt5-mac added

comment:2 Changed 6 years ago by Ionic (Mihai Moldovan)

Type: requestupdate

comment:3 Changed 6 years ago by jakepetroules (Jake Petroules)

Also, if interested, you can build with -securetransport -no-openssl and remove the openssl dependency. This will become the default in 5.6.

comment:4 Changed 6 years ago by mkae (Marko Käning)

Cc: mk@… added

Cc Me!

comment:5 Changed 6 years ago by mkae (Marko Käning)

Cc: rjvbertin@… added

comment:6 Changed 6 years ago by RJVB (René Bertin)

Need? What need?

IIUC, Qt 5.5.0 needs 10.8 or newer, meaning that we'd either be providing dedicated versions for TWO OS X version, or that 10.7 owners are left out, incapable to install the qt5 port. There could be a qt5-devel port though.

I for one will most likely hold off on updating my own Qt5 port(s) until after ambiant temps go back down here (which could mean after summer).

What's with the rpath thing mentioned above? And are there drawbacks to removing the OpenSSL dependency (will KF5 work with such a build, for instance)?

comment:7 Changed 6 years ago by jakepetroules (Jake Petroules)

IIUC, Qt 5.5.0 needs 10.8 or newer

We dropped it from the CI, not from deployment or build support. It's only deprecated for now and it won't be removed outright until Qt 5.7 (so, approximately Q3 2016). 10.7 is also ancient and by that point 10.12 will be around the corner, so this is not really a major concern anyways. If you're still running 10.7 you should upgrade.

What's with the rpath thing mentioned above?

Per MacPorts policy, just make sure you build with -no-rpath and everything will be as it always was. I'm just letting you know the default changed in Qt.

And are there drawbacks to removing the OpenSSL dependency (will KF5 work with such a build, for instance)?

Why wouldn't it? Whether Qt uses OpenSSL or SecureTransport internally should not affect client apps.

comment:8 in reply to:  7 Changed 6 years ago by RJVB (René Bertin)

Replying to jake.petroules@…:

We dropped it from the CI, not from deployment or build support. It's only deprecated for now and it won't be removed outright until Qt 5.7

We all know what happens when something complex as Qt is no longer tested on an older OS version...

If you're still running 10.7 you should upgrade.

That's an attitude I refuse to condone, and IMVHO it's not a call for MacPorts to make if and when users should update their hardware or OS.

comment:9 Changed 6 years ago by jakepetroules (Jake Petroules)

That's an attitude I refuse to condone, and IMVHO it's not a call for MacPorts to make if and when users should update their hardware or OS.

I also refuse to condone that attitude, but within reason. There is no reason for MacPorts to deliberately hold back the current version of the software which introduces new features and capabilities and fixes bugs, while working on the vast majority of platforms in use, to appease a small segment of the population running ancient OSes. The 95% should not have to suffer because the 5% might want support for an obsolete OS, especially considering that by the time Qt actually drops 10.7 its share will be even lower. As far as I know, no one here complained when Qt dropped Snow Leopard, which is a MUCH bigger change than dropping Lion, considering that SL marked a significant hardware support boundary.

comment:10 in reply to:  9 Changed 6 years ago by RJVB (René Bertin)

The whole issue is moot of course if 10.7 is still supported officially...

Replying to jake.petroules@…:

As far as I know, no one here complained when Qt dropped Snow Leopard, which is a MUCH bigger change than dropping Lion, considering that SL marked a significant hardware support boundary.

Well, that's probably because there are only very few Qt5 ports, and even more so because until recently only my non-official, wasted-effort qt5 ports provided Qt 5.4.x. I also spent significant effort to ensure that my own qt5 port continues to work on 10.6 by letting it install 5.3.2 on that OS.

I'm not sure if you're right about the hardware boundary; I was under the impression that all Intel Macs can run 10.7. But if you are, it seems there isn't going to be a big need to provide legacy support to systems other than those running 10.6?

comment:11 Changed 6 years ago by jakepetroules (Jake Petroules)

Lion requires a 64-bit CPU and drops support for PowerPC apps through Rosetta, so this is why Snow Leopard is a huge boundary and Lion isn't. There's very little difference in hardware requirements from Lion to Mountain Lion - just a few very old models with 32-bit EFI that the latter does not support.

You might have been thinking of the fact that Lion still offered a 32-bit *kernel* (for those who still had 32-bit kexts they wanted to run), but it has always required a 64-bit Intel CPU no matter what.

Last edited 6 years ago by jakepetroules (Jake Petroules) (previous) (diff)

comment:12 Changed 6 years ago by mdeaudelin (Mathieu Deaudelin-Lemay)

Cc: mdeaudelin@… added

Cc Me!

comment:13 Changed 6 years ago by NeilGirdhar (Neil)

Cc: mistersheik@… added

Cc Me!

comment:14 Changed 6 years ago by eirnym (Arseny Nasokin)

I prefer strategy from FreeBSD ports if we tell about different versions. In this case FreeBSD ports we'll have several qt5-mac ports with different or same patches, but they'll be incompatible with each other and have different characteristics. Something like qt5-mac-5.4, qt5-mac-5.5, qt5-mac (for the latest version), etc.

Yes, on the latest systems, we might install one of several ports, but we guarantee compatibility with previous systems, and include the newest one.

Last edited 6 years ago by eirnym (Arseny Nasokin) (previous) (diff)

comment:15 Changed 6 years ago by eirnym (Arseny Nasokin)

Cc: eirnym@… added

Cc Me!

comment:16 Changed 5 years ago by RJVB (René Bertin)

For those in a hurry to try Qt 5.5.0 : I've been focussing on a qt5-kde port (basically the qt5-mac-kde subport from my ill-fated concurrent Qt5 port), of which I now have made a "devel" version that provides Qt 5.5.0 :

https://github.com/RJVB/macstrop/tree/master/aqua/qt5-kde-devel

This is a work in progress that took a lot more effort than foreseen; after 2.5 days I've only just been able to do a few quick launch checks of the main port and the qt5-kde-devel-x11 subport. I'll be testing the other components over the next week(s), and may bump port:qt5-kde to 5.5.0 when everything seems to work as expected (at which point I probably will also upload a snapshot here).

comment:17 Changed 5 years ago by macports@…

Cc: macports@… added

Cc Me!

comment:18 Changed 5 years ago by kaveh@…

Cc: kaveh@… added

Cc Me!

comment:19 Changed 5 years ago by ryandesign (Ryan Schmidt)

Duplicate #48524 provides a minimal patch.

comment:20 Changed 5 years ago by stromnov (Andrew Stromnov)

Cc: stromnov@… added

Cc Me!

comment:21 Changed 5 years ago by stromnov (Andrew Stromnov)

comment:22 in reply to:  19 ; Changed 5 years ago by RJVB (René Bertin)

Replying to ryandesign@…:

Duplicate #48524 provides a minimal patch.

That just handles the version number and checksum. Does it actually build (I guess I should ask, do the patches all apply ...)

comment:23 in reply to:  22 Changed 5 years ago by mdeaudelin (Mathieu Deaudelin-Lemay)

Replying to rjvbertin@…:

Replying to ryandesign@…:

Duplicate #48524 provides a minimal patch.

That just handles the version number and checksum. Does it actually build (I guess I should ask, do the patches all apply ...)

In my experience, both patches from comment:21 are required for Qt 5.5 to build under OS X 10.11. Changing the versions and checksum is not sufficient.

Last edited 5 years ago by mdeaudelin (Mathieu Deaudelin-Lemay) (previous) (diff)

comment:24 Changed 5 years ago by RJVB (René Bertin)

Stock Qt 5.5 should build under 10.11 with those 2 patches, provided they're the only ones required. qt5-mac contains a number of other patches, though.

It took me almost 3 days to update my own Qt 5 port to 5.5.0 (but that included regenerating all patches so they apply without fuzz)

comment:25 Changed 5 years ago by mdeaudelin (Mathieu Deaudelin-Lemay)

We have nearly identical patches addressing the same issues in this ticket, ticket #49074, and ticket #48516. It might be appropriate to consolidate them all.

Changed 5 years ago by RJVB (René Bertin)

Attachment: patch-for-10.11.diff added

comment:26 in reply to:  25 Changed 5 years ago by RJVB (René Bertin)

Replying to macports@…:

We have nearly identical patches addressing the same issues in this ticket, ticket #49074, and ticket #48516. It might be appropriate to consolidate them all.

Something like the attachment I just uploaded? (Which I haven't actually checked beyond "it applies"; it is not required on 10.9)

comment:27 Changed 5 years ago by mdeaudelin (Mathieu Deaudelin-Lemay)

Like so. Though I meant to consolidate the tickets, as there is now discussion about this in three locations.

comment:28 Changed 5 years ago by stromnov (Andrew Stromnov)

Are those patches applicable only to El Capitan, or they are compatible with previous OS X versions?

comment:29 Changed 5 years ago by RJVB (René Bertin)

They're required on 10.11, certainly not on 10.9 and probably not on 10.10 either. It's easy enough to apply them only on 10.11, so there is no reason to fix things that ain't broke elsewhere. That's how fixes for 10.10 were applied in a previous Qt version.

comment:30 Changed 5 years ago by anthony.gelibert@…

Cc: anthony.gelibert@… added

Cc Me!

comment:31 Changed 5 years ago by help@…

My experience with qt5-mac port on OS X 10.10.5 and XCode 7.0.1: Currently available in macports version of qt5-mac doesn't build, so I decided if I'm to modify Portfile, might as well upgrade to 5.5. So I applied Portfile patch from #48524 and added there the patch attached to this ticket. Build failed. I had to add "-skip qtmultimedia -skip qtwebkit -skip qtwebengine" to configure.args in order for it to succeed. qtmultimedia failed with symbol _CGLGetCurrentContext not found error, qtwebkit - CGLContext.h file not found error, and qtwebengine with the one described here: https://trac.macports.org/ticket/49074#comment:11 I don't need those modules, so I got what I need, but it would be nice to actually have working Portfile in macports tree.

comment:32 Changed 5 years ago by help@…

Cc: help@… added

Cc Me!

comment:33 Changed 5 years ago by RJVB (René Bertin)

I cannot vouch for QtWebengine, but it seems the other problems are the same ones I ran into with my qt5-kde 5.5.0 port, and for which I implemented satisfying fixes. Link somewhere above.

comment:34 Changed 5 years ago by maehne (Torsten Maehne)

Cc: Torsten.Maehne@… added

Cc Me!

comment:35 Changed 5 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Resolution: fixed
Status: newclosed

As of r142505 , qt5 is now at version 5.5.1

Note: See TracTickets for help on using tickets.