Details
-
Bug
-
Resolution: Invalid
-
Not Evaluated
-
None
-
5.5.0
-
None
-
OS X 10.6, Xcode 4.2
Description
I'm trying to build my app using Qt 5.5.0 in such a way that it can be deployed to macs running OS X 10.6. So far I've been unsuccessful.
Previously I was able to get my app to run in 10.6 using Qt 5.3.2. This required building the Qt libraries myself with the -no-c++11 configuration option. After running macdeployqt on the app bundle, it would run on 10.6.
When I tried the same thing with Qt 5.5.0, I get the following linker error when my app tries to run:
dyld: Symbol not found: _NSPreferredScrollerStyleDidChangeNotification
Referenced from: /path/to/App.app/Contents/MacOS/../Frameworks/QtWidgets.framework/Versions/5/QtWidgets
Expected in: /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit
After researching this error, I figured the problem was that Qt needs to be compiled in such a way that it knows it's targeting OS X 10.6, as the default is to set the OS X deployment target to 10.7. So I made a modification to qtbase/mkspecs/macx-clang/qmake.conf:
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.6
After recompiling, the app would immediately crash with a segmentation fault.
Reading up on this some more, I found that http://wiki.qt.io/Qt500KnownIssues suggested that to get Qt 5.x running on OS X 10.6, it was necessary to compile it on 10.6.
Giving that a try, the compile failed with numerous compiler errors. Here's a link to a pastebin with all of them: http://pastebin.com/ANb3tn0q
For what it's worth, when trying to compile for 10.6, I checked out Qt from git and compiled using the 5.5 branch.
Is OS X 10.6 still supported with Qt 5.5.0? If so, then I think some of the changes between Qt 5.3.2 and Qt 5.5.0 aren't using proper weak linking and testing the availability of functions and constants where necessary. If not, then the documentation should be updated to mention this.