Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.9.0
-
None
-
Yosemite with Xcode 7.2.1 Build version 7C1002
Sierra with Xcode 8.3.3 Build version 8E3004b
Qt was installed via OnlineDownloader, the precompiled iOS versions do work.
-
-
13ac2688a4c692bb430d43c87c440f34d2775307 dfc58409edac5ef38cf4871616811e7ae3fbd7d4 81b90c61db8c1853be42ef5dc13aaf37f2677923
Description
It seems not possible to build Qt for iOS from sources, both on 5.9.0 release and 5.9.1 snapshot from 13-06.
Sources were downloaded with maintenance tool, build was tested on Yosemite (Xcode 7.2.1 Build version 7C1002) and on a fresh Sierra install (Xcode 8.3.3 Build version 8E3004b)
The command was (and respective for 5.9.0):
sudo ./configure -prefix /Developer/qt/5.9.1/ios -xplatform macx-ios-clang -release -shared -nomake examples -nomake tests -opensource -confirm-license && sudo make -j 4 && sudo make -j 4 install
With 5.9.0 I get:
Undefined symbols for architecture armv7: "_CFArrayAppendValue", referenced from: QCoreTextFontDatabase::populateFontDatabase() in libQt5FontDatabaseSupport.a(qcoretextfontdatabase.o) QCoreTextFontDatabase::addApplicationFont(QByteArray const&, QString const&) in libQt5FontDatabaseSupport.a(qcoretextfontdatabase.o) "_CFArrayContainsValue", referenced from: getFontDescription(__CTFontDescriptor const*, FontDescription*) in libQt5FontDatabaseSupport.a(qcoretextfontdatabase.o) "_CFArrayCreateMutable", referenced from: QCoreTextFontDatabase::addApplicationFont(QByteArray const&, QString const&) in libQt5FontDatabaseSupport.a(qcoretextfontdatabase.o) (...continued...) ld: symbol(s) not found for architecture armv7 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[5]: *** [../../../../plugins/platforms/libqminimal.dylib] Error 1
With 5.9.1snap I get (the same error for armv7, this message was the result from removing armv7 from mkspec for testing):
Undefined symbols for architecture armv7: "_OBJC_CLASS_$_NSData", referenced from: objc-class-ref in qmacfunctions.o "_objc_msgSend", referenced from: QtMac::toNSData(QByteArray const&) in qmacfunctions.o QtMac::fromNSData(NSData const*) in qmacfunctions.o QtMac::setApplicationIconBadgeNumber(int) in qmacfunctions_ios.o QtMac::applicationIconBadgeNumber() in qmacfunctions_ios.o ld: symbol(s) not found for architecture armv7 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[3]: *** [../../lib/QtMacExtras.framework/QtMacExtras] Error 1
The error messages are identical on Yosemite and Sierra.
Full build log attached