Opened 7 years ago

Closed 6 years ago

#55651 closed defect (fixed)

qt5-qtwebengine @5.10.0: Requires newer Xcode than can be installed on Yosemite

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Priority: Normal Milestone:
Component: ports Version:
Keywords: yosemite Cc: randawg
Port: qt5-qtwebengine

Description (last modified by ryandesign (Ryan Carsten Schmidt))

https://build.macports.org/builders/ports-10.10_x86_64-builder/builds/43607/steps/install-port/logs/stdio

Using Xcode version 7.2.1, but at least version 7.3 is required to build Qt WebEngine.

Xcode 7.3 requires El Capitan.

Change History (6)

comment:1 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)

comment:2 Changed 7 years ago by randawg

Cc: randawg added

comment:3 Changed 7 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Sorry for not getting to this sooner.

Based on previous experience, it is extremely unlikely that a component of Qt can be patched to work on an older system.
Does an error earlier in the build process qualify as a fix for this problem?

comment:4 in reply to:  3 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to MarcusCalhoun-Lopez:

Based on previous experience, it is extremely unlikely that a component of Qt can be patched to work on an older system.
Does an error earlier in the build process qualify as a fix for this problem?

Not really. The qt5 portgroup chooses which version of Qt to use on each version of macOS, so it needs to choose a version that works. On Yosemite, it currently chooses a version of Qt where QtWebEngine cannot be built.

It seems unlikely to me that the error message is literally correct—I doubt it actually requires Xcode 7.3 or later. It is more likely that it requires at least the version of clang in Xcode 7.3 or later, and/or the MacOSX10.10 SDK in Xcode 7.3 or later. MacPorts already provides newer clang compilers that can be used simply by blacklisting the unsuitable Xcode compiler. And I am working on a project to offer macOS SDKs via a MacPorts port.

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

I have created a pull request that should fix this problem.

There may be a way to get QtWebEngine working on older platforms.
However, every one of my attempts so far has ended in failure.

As outlined in this message, there are still outstanding issues with QtWebEngine on older platforms.
In order to get QtWebEngine working, we would have to:

  • OS X 10.8: Qt would have to revert to 5.5
  • Mac OS X 10.7: Qt would have to revert to 5.5
  • Mac OS X 10.6: a new port for Qt 5.4 would have to be created

I do not believe it is worth it to make these changes.
QtWebEngine is a special case.
The only ports that use it are:

  • QupZilla
  • gpsbabel
  • luminance-hdr
  • py-pyqt5
  • qt5-qtcreator

Of those, only QupZilla and luminance-hdr have a mandatory dependency on QtWebEngine.
QupZilla requires at least Qt 5.9.
There is an upstream patch that purports to allow luminance-hdr to use QtWebkit instead of QtWebEngine.

comment:6 Changed 6 years ago by Marcus Calhoun-Lopez <marcuscalhounlopez@…>

Resolution: fixed
Status: newclosed

In 7b8af4dc9cda436c6129d426bf56fb6d2dab2ece/macports-ports (master):

qt5: use Qt 5.9 on OS X 10.10

Qt 5.9 is the last version of Qt to officially support OS X 10.10.
QtWebEngine is known not to work.

Fixes #55651

Note: See TracTickets for help on using tickets.