短错误:
file was built for archive which is not the architecture being linked (i386)
扩展:
对于某些模拟器,我在构建项目时收到这些错误:
ld:警告:忽略文件/Users/admin/Library/Developer/Xcode/DerivedData/myApp-ekwldvjyuxwkykbareyvvydbtero/Build/Products/Debug-iphonesimulator/libFSCalendar.a,文件是为存档而构建的,而不是被链接的体系结构(i386 ):/Users/admin/Library/Developer/Xcode/DerivedData/myApp-ekwldvjyuxwkykbareyvvydbtero/Build/Products/Debug-iphonesimulator/libFSCalendar.a ld:警告:忽略文件/ Users / admin / Library / Developer / Xcode / DerivedData / myApp -ekwldvjyuxwkykbareyvvydbtero / Build / Products / Debug-iphonesimulator / libGBDeviceInfo.a,文件是为存档而构建的,它不是被链接的架构(i386):/ Users / admin / Library / Developer / Xcode / DerivedData / myApp-ekwldvjyuxwkykbareyvvydbtero / Build /产品/ Debug-iphonesimulator / libGBDeviceInfo.a ld:警告:忽略文件/ Users / admin / Library / Developer / Xcode / DerivedData / myApp-ekwldvjyuxwkykbareyvvydbtero / Build / Products / Debug-iphonesimulator / libSCLAlertView-Objective-Ca,file is built for built存档不是架构师e被链接(i386):/ Users / admin / Library / Developer / Xcode / DerivedData / myApp-ekwldvjyuxwkykbareyvvydbtero / Build / Products / Debug-iphonesimulator / libSCLAlertView-Objective-Ca ld:warning:忽略文件/ Users / admin / Library / Developer / Xcode / DerivedData / myApp-ekwldvjyuxwkykbareyvvydbtero / Build / Products / Debug-iphonesimulator / libSSKeychain.a,文件是为存档而构建的,而不是被链接的架构(i386):/ Users / admin / Library / Developer / Xcode / DerivedData /myApp-ekwldvjyuxwkykbareyvvydbtero/Build/Products/Debug-iphonesimulator/libSSKeychain.a架构i386的未定义符号:“_ OBJC_CLASS _ $ _ FSCalendar”,引自:VCalendarView.o中的objc-class-ref“OBJC_CLASS _ $ _ GBDeviceInfo”,引用自:objc -class-ref在VEMailView.o objc-class-ref中的DataClass.o“ OBJC_CLASS _ $ _ SCLAlertView”,引自:VAlerts.o中的objc-class-ref“OBJC_CLASS _ $ _ SCLAlertViewBuilder”,引自:objc-class-ref in VAlerts.o“ OBJC_CLASS _ $ _ SCLAlertViewShowBuilder”,引自:obj VA -rts-ref在VAlerts.o“_ OBJC_CLASS _ $ _ SSKeychain”中,引自:VDescriptionView.o中的objc-class-ref ld:未找到架构i386 clang的符号:错误:链接器命令失败,退出代码为1(使用-v查看调用)
它适用于iPhone 6 Plus模拟器9.3.0,但不适用于iPhone 5s . 为什么?对于 Other Linker Flags 选项,我有 $(inherited)
.
2 回答
我通过删除
DerivedData
目录解决了这个问题 .脚步:
在Xcode中,转到菜单栏→窗口→项目 .
在“项目”窗口中,选择左侧的项目 .
单击“派生数据”的“删除...”按钮 . 要求确认时,单击“删除” .
重建项目 .
对于Xcode 8,请参阅此问答:
How to delete derived data in Xcode 8?
我找到了解决方案 .
我删除了目录
/Users/admin/Library/Developer/Xcode/DerivedData/myApp-ekwldvjyuxwkykbareyvvydbtero/Build
(右键单击CocoaPods库>在Finder中显示,然后找到它的父目录)并再次重建所有目录 . Xcode重新创建了现在可用的所有库 . 所有构建首选项都与默认值相同 .