Opened 9 years ago
Closed 9 years ago
#48129 closed defect (fixed)
qt4-mac @4.8.7: El Capitan is an unsupported platform
Reported by: | SAssadi@… | Owned by: | michaelld (Michael Dickens) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.3.3 |
Keywords: | elcapitan | Cc: | jan.janssen@…, mdeaudelin (Mathieu Deaudelin-Lemay), springermac (Jonathan Springer), bukczynski@…, christophfink, erben22-macports@…, carlesfernandez (Carles Fernandez), szhorvat (Szabolcs Horvát), Schamschula (Marius Schamschula), diochnos, rlhamil, hgonzale (Humberto Gonzalez), francnet00@…, axone-zero, jguillaumes@… |
Port: | qt4-mac |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
Error: qt4-mac does not currently build on OSX later than 10.10 'Yosemite'. Error: org.macports.fetch for port qt4-mac returned: unsupported platform Please see the log file for port qt4-mac for details: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_aqua_qt4-mac/qt4-mac/main.log To report a bug, follow the instructions in the guide: http://guide.macports.org/#project.tickets Error: Processing of port qt4-mac failed less /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_aqua_qt4-mac/qt4-mac/main.log
:debug:main libiconv 1.14_0 is the latest installed :debug:main libiconv 1.14_0 is active :debug:main Merging existing variants '' into variants :debug:main new fully merged portvariants: :debug:main Changing to port directory: /opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/textproc/libiconv :debug:main OS darwin/15.0.0 (Mac OS X 10.11) arch i386 :debug:main Reading variant descriptions from /opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/_resources/port1.0/variant_descriptions.conf :debug:main Sourcing PortGroup muniversal 1.0 from /opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/_resources/port1.0/group/muniversal-1.0.tcl :debug:main universal variant already exists, so not adding the default one :debug:main Running callback portconfigure::add_automatic_compiler_dependencies :debug:main Finished running callback portconfigure::add_automatic_compiler_dependencies :debug:main Running callback portbuild::add_automatic_buildsystem_dependencies :debug:main Finished running callback portbuild::add_automatic_buildsystem_dependencies :debug:main No need to upgrade! libiconv 1.14_0 >= libiconv 1.14_0 :msg:main ---> Computing dependencies for qt4-mac:info:main .:debug:main Checking for conflicts against qt4-mac :debug:main Searching for dependency: qt3 :debug:main Didn't find receipt, going to depspec regex for: qt3 :debug:main Searching for dependency: qt3-mac :debug:main Didn't find receipt, going to depspec regex for: qt3-mac :debug:main Searching for dependency: qt5-mac :debug:main Didn't find receipt, going to depspec regex for: qt5-mac :debug:main Searching for dependency: pkgconfig :debug:main Found Dependency: receipt exists for pkgconfig :msg:main :debug:main Executing org.macports.main (qt4-mac) :debug:main changing euid/egid - current euid: 0 - current egid: 0 :debug:main egid changed to: 501 :debug:main euid changed to: 503 :debug:main Skipping completed org.macports.archivefetch (qt4-mac) :debug:main Privilege de-escalation not attempted as not running as root. :debug:fetch fetch phase started at Sun Jun 21 07:57:33 CDT 2015 :notice:fetch ---> Fetching distfiles for qt4-mac :warn:fetch Your DNS servers incorrectly claim to know the address of nonexistent hosts. This may cause checksum mismatches for some ports. See this page for more information: <https://trac.macports.org/wiki/MisbehavingServers> :debug:fetch Executing proc-pre-org.macports.fetch-fetch-0 :error:fetch qt4-mac does not currently build on OSX later than 10.10 'Yosemite'. :error:fetch org.macports.fetch for port qt4-mac returned: unsupported platform :debug:fetch Error code: NONE :debug:fetch Backtrace: unsupported platform while executing "proc-pre-org.macports.fetch-fetch-0 org.macports.fetch" ("eval" body line 1) invoked from within "eval $pre $targetname" :info:fetch Warning: targets not executed for qt4-mac: org.macports.activate org.macports.fetch org.macports.checksum org.macports.extract org.macports.patch org.macports.configure org.macports.build org.macports.destroot org.macports.install :notice:fetch Please see the log file for port qt4-mac for details: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_aqua_qt4-mac/qt4-mac/main.log
Attachments (4)
Change History (50)
Changed 9 years ago by SAssadi@…
comment:1 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | michaelld removed |
---|---|
Description: | modified (diff) |
Keywords: | elcapitan added; qt4-mac OSX10.11 El Capitan removed |
Milestone: | MacPorts Future |
Owner: | changed from macports-tickets@… to michaelld@… |
Type: | request → defect |
comment:2 Changed 9 years ago by larryv (Lawrence Velázquez)
Cc: | jan.janssen@… added |
---|
Has duplicate #48181.
Changed 9 years ago by root-control@…
Attachment: | detailed-error-message.log.public.plain-text.public.plain-text added |
---|
When disabling the warning, the compilation fails dude to changes in the Foundation.Framework.
Changed 9 years ago by root-control@…
Attachment: | detailed-error-message.txt added |
---|
Or maybe just an SSL error ? - I am confused.
comment:3 Changed 9 years ago by michaelld (Michael Dickens)
Qt4 (and, Qt5) are very complicated builds. Thus, we intentionally disable building them on future platforms. Once I get access to a 10.11 beta or release, I'll see what I can do to get qt4-mac building on it. Until then, I welcome patches for testing and evaluation, once I do get 10.11.
comment:4 Changed 9 years ago by michaelld (Michael Dickens)
Cc: | mdeaudelin@… added |
---|
Has duplicate #48369; this other ticket also has a patch to look at.
comment:5 Changed 9 years ago by mdeaudelin (Mathieu Deaudelin-Lemay)
For reference, I haven't seen either of those problems when building Qt 4 on OS X 10.11. I've had no error related to the changes in NSEnumerator.h, nor any message related to OpenSSL. Either way, MacPorts uses its own copy of the OpenSSL library, so it shouldn't matter that Apple removed it from the SDK.
What I had trouble with, though, are the numerous calls to ColorSync or ATS deprecated functions. They can be fixed by setting the macosx_deployment_target to 10.10. Otherwise, everything builds fine (so far) with this minor change.
comment:6 Changed 9 years ago by michaelld (Michael Dickens)
Cool; thanks for the reports.
I'm waiting to get a copy of the X.11 beta for testing and evaluation. Once I can do that I'll do the commit to qt4-mac.
comment:8 follow-up: 14 Changed 9 years ago by eirnym (Eir Nym)
@michaelld FYI: OSX 11 beta 3 is out July 30. Can you test QT4?
comment:9 follow-up: 10 Changed 9 years ago by michaelld (Michael Dickens)
How do I get it? I signed up for the Apple OSX beta program, and have heard nothing. I Apple making this freely available to anyone now? If so, what's a link?
comment:10 Changed 9 years ago by bukczynski@…
Replying to michaelld@…:
How do I get it? I signed up for the Apple OSX beta program, and have heard nothing. I Apple making this freely available to anyone now? If so, what's a link?
Try https://beta.apple.com/sp/betaprogram/redemption#osx It will make sign in with your Apple ID, but hopefully works? I thought they opened the Beta program up to everyone..
comment:14 follow-up: 15 Changed 9 years ago by kgarrels
Replying to eirnym@…:
@michaelld FYI: OSX 11 beta 3 is out July 30. Can you test QT4?
It still does not build unless you set the platform back to 10.10
comment:15 Changed 9 years ago by mdeaudelin (Mathieu Deaudelin-Lemay)
Replying to kai.garrels@…:
Replying to eirnym@…:
@michaelld FYI: OSX 11 beta 3 is out July 30. Can you test QT4?
It still does not build unless you set the platform back to 10.10
I wouldn't expect that to change from beta to beta. Qt4 uses APIs that were intentionally removed in El Capitan, so it won't ever build against the 10.11 SDK. That is, unless someone rewrites the parts of it who depend on the old ColorSync or Apple Type Services APIs. That patch likely won't come from upstream since they announced the current version would be the last.
comment:18 Changed 9 years ago by carlesfernandez (Carles Fernandez)
Cc: | carles.fernandez@… added |
---|
Cc Me!
comment:19 Changed 9 years ago by michaelld (Michael Dickens)
Well I -finally- got 10.11 installed Monday & started installing everything I generally use using Xcode 7.0.1. I didn't install anything special, just the CLTs. When I try the patch, building still fails in the same way as without it. I'm guessing one has to have the 10.10SDK installed for "macosx_deployment_target 10.10" to work. Looking at the log, it is set correctly and being used during the build. Sigh. I had really hoped this change would "just work". So, now back to backporting some Qt5 changes for these issues. Fun times ahead!
Changed 9 years ago by michaelld (Michael Dickens)
Attachment: | qt4-mac.10.11.diff added |
---|
comment:21 follow-up: 22 Changed 9 years ago by michaelld (Michael Dickens)
I just attached a "svn diff" file done from $(port dir qt4-mac) that allows qt4-mac to build on 10.11 without resorting to using the 10.10 SDK; at least for me it works. I'd love to get some feedback from others as to if it works for you, too. I think you can just do:
cd $(port dir qt4-mac) sudo port clean qt4-mac patch -p0 < PATH_TO/qt4-mac.10.11.diff sudo port install qt4-mac
and it should work; where "PATH_TO" is the path to where this patch file is located.
comment:22 Changed 9 years ago by bukczynski@…
Worked perfectly on my system. The only exception is I had to sudo the patch command, but the build/install appears to have been successful. Thanks!
comment:23 follow-up: 24 Changed 9 years ago by gsulshski (Greg Ulsh)
I had to use the sudo patch command as well but I had problem applying the patch.
sudo patch -p0 < /Users/gregoryulsh/developer/macports/qt4-mac.10.11.diff patching file Portfolio Hunk #1 FAILED at 238. 1 out of 1 hunk FAILED -- saving rejects to file Portfile.rej patching file files/patch-src_gui_painting_qpaintengine_mac.diff
here is the Portfile.rej
*** 238,252 **** patchfiles-append \ patch-tools_macdeployqt_shared_shared.cpp.diff - # error out if trying to build on a new OSX version (> 10.10). platform darwin { - if {${MINOR} > 10} { # This project needs to be updated to build with clang++ against libc++ depends_lib depends_run pre-fetch { - ui_error "$name does not currently build on OSX later than 10.10 'Yosemite'." error "unsupported platform" } } --- 238,263 ---- patchfiles-append \ patch-tools_macdeployqt_shared_shared.cpp.diff + # (23) remove ColorSync usage from qpaintengine. + # This patch allows for building using the 10.11 SDK, and is also + # backward compatible with prior OS versions since it just removes API + # usage but does not otherwise add any. This patch does roughly the + # same thing as that from Qt5 commit b06304e16: + # http://code.qt.io/cgit/qt/qtbase.git/commit/?id=b06304e164ba47351fa292662c1e6383c081b5ca + + patchfiles-append \ + patch-src_gui_painting_qpaintengine_mac.diff + + # error out if trying to build on a new OSX version (> 10.11). + platform darwin { + if {${MINOR} > 11} { # This project needs to be updated to build with clang++ against libc++ depends_lib depends_run pre-fetch { + ui_error "$name does not currently build on OSX later than 10.11 'El Capitan'." error "unsupported platform" } }
comment:24 Changed 9 years ago by radoslaw@…
Replying to gsulsh57@…:
sudo rm -rf $(port dir qt4-mac) sudo port sync sudo port clean qt4-mac cd $(port dir qt4-mac) sudo patch -p0 < PATH_TO/qt4-mac.10.11.diff sudo port install qt4-mac
Should fix it!
I had to use the sudo patch command as well but I had problem applying the patch.
sudo patch -p0 < /Users/gregoryulsh/developer/macports/qt4-mac.10.11.diff patching file Portfolio Hunk #1 FAILED at 238. 1 out of 1 hunk FAILED -- saving rejects to file Portfile.rej patching file files/patch-src_gui_painting_qpaintengine_mac.diffhere is the Portfile.rej
*** 238,252 **** patchfiles-append \ patch-tools_macdeployqt_shared_shared.cpp.diff - # error out if trying to build on a new OSX version (> 10.10). platform darwin { - if {${MINOR} > 10} { # This project needs to be updated to build with clang++ against libc++ depends_lib depends_run pre-fetch { - ui_error "$name does not currently build on OSX later than 10.10 'Yosemite'." error "unsupported platform" } } --- 238,263 ---- patchfiles-append \ patch-tools_macdeployqt_shared_shared.cpp.diff + # (23) remove ColorSync usage from qpaintengine. + # This patch allows for building using the 10.11 SDK, and is also + # backward compatible with prior OS versions since it just removes API + # usage but does not otherwise add any. This patch does roughly the + # same thing as that from Qt5 commit b06304e16: + # http://code.qt.io/cgit/qt/qtbase.git/commit/?id=b06304e164ba47351fa292662c1e6383c081b5ca + + patchfiles-append \ + patch-src_gui_painting_qpaintengine_mac.diff + + # error out if trying to build on a new OSX version (> 10.11). + platform darwin { + if {${MINOR} > 11} { # This project needs to be updated to build with clang++ against libc++ depends_lib depends_run pre-fetch { + ui_error "$name does not currently build on OSX later than 10.11 'El Capitan'." error "unsupported platform" } }
comment:25 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)
Priority: | Low → Normal |
---|---|
Summary: | Install qt4-mac on OSX El Capitan returned: unsupported platform → qt4-mac @4.8.7: El Capitan is an unsupported platform |
Raising priority to normal because El Capitan has been released.
comment:26 Changed 9 years ago by gsulshski (Greg Ulsh)
I tried the following list above and it worked! I would note that if you start in $(port dir qt4-mac) directory the sudo port sync command will not work. I changed the start of this procedure to the directory where I put the patch and this procedure worked!
Also, my primary reason for using the port qt4-mac is this is a dependency with mythv-core.27. I primarily use a mac mini has a home theatre and mythv and kodi are my primary software packages. If you are trying to install mythtv-core.27, there is another ticket that you will want to run to fix a checksum mismatch with github ...see ticket #48987
sudo rm -rf $(port dir qt4-mac) sudo port sync sudo port clean qt4-mac cd $(port dir qt4-mac) sudo patch -p0 < PATH_TO/qt4-mac.10.11.diff sudo port install qt4-mac
gregoryulsh$ sudo port sync
---> Updating the ports tree
Kristens-iMac:macports gregoryulsh$ sudo port clean qt4-mac
---> Cleaning qt4-mac
Kristens-iMac:macports gregoryulsh$ cd $(port dir qt4-mac)
Kristens-iMac:qt4-mac gregoryulsh$ sudo patch -p0 < /Users/gregoryulsh/developer/macports/qt4-mac.10.11.diff
patching file Portfile
patching file files/patch-src_gui_painting_qpaintengine_mac.diff
Kristens-iMac:qt4-mac gregoryulsh$ sudo port install qt4-mac
---> Computing dependencies for qt4-mac
---> Fetching archive for qt4-mac
---> Attempting to fetch qt4-mac-4.8.7_1.darwin_15.x86_64.tbz2 from http://packages.macports.org/qt4-mac[[BR]]
---> Attempting to fetch qt4-mac-4.8.7_1.darwin_15.x86_64.tbz2 from http://mse.uk.packages.macports.org/sites/packages.macports.org/qt4-mac[[BR]]
---> Attempting to fetch qt4-mac-4.8.7_1.darwin_15.x86_64.tbz2 from http://lil.fr.packages.macports.org/qt4-mac[[BR]]
---> Fetching distfiles for qt4-mac
---> Verifying checksums for qt4-mac
---> Extracting qt4-mac
---> Applying patches to qt4-mac
---> Configuring qt4-mac
---> Building qt4-mac
---> Staging qt4-mac into destroot
---> Installing qt4-mac @4.8.7_1
---> Activating qt4-mac @4.8.7_1
NOTE: Qt database plugins for mysql55, postgresql91, and sqlite2 are NOT installed by this port; they are installed by qt4-mac-*-plugin instead.
---> Cleaning qt4-mac
---> Updating database of binaries
---> Scanning binaries for linking errors
---> No broken files found.
comment:27 Changed 9 years ago by michaelld (Michael Dickens)
Awesome; thanks for initial build testing! For folks who've done this patch & install: Does Qt4 work as expected for you in whatever capacity you need to use it? So far in my testing it works correctly for my Qt4-based applications. I'm going to give folks through the weekend for testing / evaluation & then commit on Monday if there are no issues discovered. Given the transition for many folks to 10.11 & the need to build/rebuild qt4-mac, I'm also thinking of doing the install location transition from ticket #44193. If things are going to be (potentially) messy, let's just get it over with (IMHO)!
comment:28 Changed 9 years ago by RJVB (René Bertin)
soo... has this patch been tested on OS X < 10.10, and with KDE4 applications?
comment:29 Changed 9 years ago by Schamschula (Marius Schamschula)
Thanks Michael!
The patch works for me under El Cap, public release, Xcode 7.0.1. I just built octave 4.0.0 against it.
comment:33 Changed 9 years ago by rlhamil
patch works for me so far (qt4-mac built painlessly after adding the patch), but other dependency problems keep me from building what I'd usually use that exercised it (the games for KDE4, esp. kshisen).
comment:39 Changed 9 years ago by graziosi.angelo@…
The patch seems to work for me too. I upgraded djview and geant4 which depend on qt4-mac...
comment:40 Changed 9 years ago by michaelld (Michael Dickens)
Great; thanks for the continued feedback! I think this patch will get committed Tuesday.
comment:41 follow-up: 42 Changed 9 years ago by michaelld (Michael Dickens)
Resolution: | → fixed |
---|---|
Status: | new → closed |
Committed in r140959.
comment:42 Changed 9 years ago by graziosi.angelo@…
Just for completeness..
Replying to michaelld@…:
Committed in r140959.
After upgrading to qt4-mac-4.8.7_2, djview and geant4 were rebuilt without problems.. I only notice that the above link to the committed revision, says
In the repository, changeset 140959 does not exist
The same occurs for other recent revisions..
In any case, thanks for the fix.
Angelo
comment:43 follow-up: 44 Changed 9 years ago by michaelld (Michael Dickens)
Glad this change is working for folks! We (MP devs) know of the issues with trac & someone of authority is working on addressing them. No idea when it will actually be fixed.
comment:44 Changed 9 years ago by ryrrah@…
Resolution: | fixed |
---|---|
Status: | closed → reopened |
Replying to michaelld@…:
Glad this change is working for folks! We (MP devs) know of the issues with trac & someone of authority is working on addressing them. No idea when it will actually be fixed.
I am having trouble applying the patch. I am on El Capitan 10.11.1 and have installed the latest versions of Xcode and MacPorts. Following the sequence above, at the point that I apply the patch, I get the following error message:
patching file Portfile Hunk #1 FAILED at 238. 1 out of 1 hunk FAILED -- saving rejects to file Portfile.rej patching file files/patch-src_gui_painting_qpaintengine_mac.diff
The output of Portfile.rej follows. Any suggestions on how to fix this?
Thanks.
Portfile.rej
* * 238,252
patchfiles-append \
patch-tools_macdeployqt_shared_shared.cpp.diff
- # error out if trying to build on a new OSX version (> 10.10).
platform darwin {
- if {${MINOR} > 10} {
# This project needs to be updated to build with clang++ against libc++ depends_lib depends_run pre-fetch {
- ui_error "$name does not currently build on OSX later than 10.10 'Yosemite'."
error "unsupported platform"
}
}
--- 238,263 ----
patchfiles-append \
patch-tools_macdeployqt_shared_shared.cpp.diff
+ # (23) remove ColorSync usage from qpaintengine. + # This patch allows for building using the 10.11 SDK, and is also + # backward compatible with prior OS versions since it just removes API + # usage but does not otherwise add any. This patch does roughly the + # same thing as that from Qt5 commit b06304e16: + # http://code.qt.io/cgit/qt/qtbase.git/commit/?id=b06304e164ba47351fa292662c1e6383c081b5ca + + patchfiles-append \ + patch-src_gui_painting_qpaintengine_mac.diff + + # error out if trying to build on a new OSX version (> 10.11). +
platform darwin {
+ if {${MINOR} > 11} {
# This project needs to be updated to build with clang++ against libc++ depends_lib depends_run pre-fetch {
+ ui_error "$name does not currently build on OSX later than 10.11 'El Capitan'."
error "unsupported platform"
}
}
comment:45 Changed 9 years ago by michaelld (Michael Dickens)
For folks who tried out a qt4-mac patch & are now trying to upgrade, you'll need to revert the port info for qt4-mac. You can generally do this via:
cd $(port dir qt4-mac) sudo svn revert -R .
In some cases you'll need to also do:
sudo svn resolve --accept theirs-full -R .
Once "svn status" comes back clean, then do the sync or selfupdate & then you should be able to upgrade qt4-mac to the latest.
comment:46 Changed 9 years ago by michaelld (Michael Dickens)
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
If the above does not resolve your issue, please open a new ticket and attach a log file starting from "port clean qt4-mac". This ticket's issue has been fixed.
main.log has the error file