我在尝试为iphone模拟器构建时遇到此错误:
d: warning: ignoring file /users/salehshah/SmartSwipe/libANMobilePaymentLib.a, file was built for archive which is not the architecture being linked (i386) Undefined symbols for architecture i386:
请注意我在iOS 5中使用xcode 4.2。项目在设备上构建并运行良好。我认为在链接静态库时存在一些问题。可能是架构有问题。
答案 0 :(得分:2)
您正在链接的静态库未针对模拟器进行编译。如果这是一个预编译库,您可能需要创建一个版本,其中包括所有三个iOS架构armv6 armv7和i386。您可以通过自己编译每个体系结构然后使用lipo将它们链接在一起来查看man lipo
另一方面,如果您将库编译为应用程序目标的依赖项,则构建设置出现问题。查看库构建设置,即ARCHS
和VALID_ARCHS