-
Bug
-
Resolution: Duplicate
-
P2: Important
-
None
-
5.10.0 Beta 3
-
None
-
iOS 11.1
1.) Change the iOS makespec so that it includes armv7 and arm64
2.) Configure:
./configure -prefix /Users/Peter/qtdevbuilt/ios5_10 -xplatform macx-ios-clang -release -nomake examples -nomake tests -opensource -confirm-license -skip qtcanvas3d -skip qtdatavis3d -skip qtwebengine -skip qtactiveqt -skip qtgamepad -skip qtserialbus -skip qtspeech -skip qtvirtualkeyboard -skip qtwayland
3.) Compile one of the Qt examples which uses QtQuick (for example "sidebar"). Compilation fails with this linking error (full log attached):
Undefined symbols for architecture armv7: "operator delete(void*, std::align_val_t)", referenced from: QQuickOpenGLShaderEffect::~QQuickOpenGLShaderEffect() in libQt5Quick.a(qquickopenglshadereffect.o) QtPrivate::MappedSlotObject::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) in libQt5Quick.a(qquickopenglshadereffect.o) "operator new(unsigned long, std::align_val_t)", referenced from: QQuickShaderEffect::QQuickShaderEffect(QQuickItem*) in libQt5Quick.a(qquickshadereffect.o) QQuickOpenGLShaderEffectCommon::lookThroughShaderCode(QQuickItem*, QMetaObject const*, QQuickOpenGLShaderEffectMaterialKey::ShaderType, QByteArray const&) in libQt5Quick.a(qquickopenglshadereffect.o) QQuickOpenGLShaderEffectCommon::updateShader(QQuickItem*, QMetaObject const*, QQuickOpenGLShaderEffectMaterialKey::ShaderType) in libQt5Quick.a(qquickopenglshadereffect.o) ld: symbol(s) not found for architecture armv7 clang: error: linker command failed with exit code 1 (use -v to see invocation)
When Qt is compiled only for arm64 (remove "armv7" from makespec) then compilation succeeds.
- duplicates
-
QTBUG-63747 Link error "Undefined symbols for architecture armv7" when building iOS apps
-
- Reported
-