当我想构建使用Qt4iOS和Xcode 4.2的项目时,我遇到了这个错误。
问题是当我在Qt中构建项目时,我的GCC编译器被设置为x86。
我拥有Xcode的系统是x64,但昨天工作一切正常。现在我突然得到了这个错误。我试图使用x64编译器构建我的Qt项目,但我仍然遇到同样的错误。
知道出了什么问题吗?
答案 0 :(得分:0)
根据您的评论,您似乎没有使用x86编译器为模拟器构建应用程序(您的库是armv7 atm)。
尝试将模拟器编译器添加为Qt Creator中的新工具链(位于/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/g++
),就像您为设备编译器所做的那样,并将新模拟器用于下一个模拟器构建。
您可以再次使用lipo检查生成的库。
答案 1 :(得分:0)
也许按照说明会有所帮助?当你不遵守它们时,你会浪费每个人的时间。特别是,这个问题的回答是:
“Qt4iOS SDK已构建为'通用二进制文件',包含ARM(设备)和x86(模拟器)目标的可链接对象代码。在构建应用程序项目时,需要为该设备构建它或者模拟器。当为模拟器构建时,需要在运行qmake时指定mkspec,例如。
Xcode 4.2.x(及更早版本):
/Developer/Qt4iOS/qt-everywhere-ios-gles2-4.8.1/bin/qmake animatedtiles.pro -spec qpa / macx-iossimulator-clang-legacy
Xcode 4.3.x(及更高版本):
/Developer/Qt4iOS/qt-everywhere-ios-gles2-4.8.1/bin/qmake animatedtiles.pro -spec qpa / macx-iossimulator-clang“