选择支持架构的目标设备以在此设备上运行 - XCode 4.5(4G182)+ iPhone 5 iOS6

29
我昨晚使用XCode 4.5为iOS6创建了一个全新的应用程序。我可以在我的运行iOS6的iPhone 4上进行开发。
今天,我拿到了一部运行iOS6的新iPhone 5,并更新了具有新设备UUID的证书。但当我尝试在它上面运行我的应用程序时,出现了以下错误:
“XCode无法使用所选设备运行。请选择支持此设备的架构作为目标。”

我已经启用了设备的开发模式。在设置中同时包含了armv7和armv7s。
我已经添加了Facebook 3.0 SDK的源代码以及链接标志“-lsqlite3.0”。我猜问题肯定与此有关,但无法确定出错原因。
有任何解决方法吗?
附注:当在模拟器上运行应用程序时,也会出现此问题。不知道昨晚和今天之间我的项目或XCode发生了什么变化,除了我有一个新设备和新证书。
所选目标不支持所选软件构建的架构。请切换到支持该架构的目标以运行所选软件。

不要直接添加编译器标志。尝试以与添加框架相同的方式添加sqlite库。所有动态库都在那里,构建系统将生成正确的链接(模拟器的LP64,A6的armv7s和A5的armv7)。 - Jason Coco
17个回答

1

我遇到了这个问题,因为构建设置-> C/C++/Objective c编译器设置错误。

所以我将其更改为默认可用的编译器,它起作用了!


感谢Nishant提供的有用答案! - Niru Mukund Shah

0
我在编写一个支持 iPhone 5 的新应用程序,而使用的库却是为 iOS 4.x 构建的旧库。我收到了这个错误,唯一解决的办法就是将 armv7 设置为项目和目标构建设置中唯一的架构和有效架构。

0

删除 info.plist 的引用。然后重新拖拽 info.plist 到项目中,但不要复制到“目标”。


0

有时候当你的项目是在Xcode 4.5中构建,而你正在尝试在Xcode 5.0中运行时会出现这种情况。 所以在我的情况下我找到了解决方案。

更改C/C++/ObjectiveC编译器,前往Build

设置->构建选项->C/C++/ObjectiveC编译器; 选择 默认值(Apple LLVM5.0)


0

好的,不确定这是否是您项目中的问题。但对我有用的解决方法是更改Info.plist文件的名称。

  1. 我将名称从Info.plist更改为my-project-info.plist
  2. 还要在target-build-settings/Packaging/Info.plist下进行更改
  3. 然后从设备/模拟器中删除应用程序,并通过Xcode重新运行应用程序

在我的情况下,自那以后一切都正常工作。在我的情况下,plist文件中的规格或有效架构没有任何问题


0

您只需前往构建设置,然后验证架构,将 armv7 替换为 armv7s,而不是 armv7。然后它就可以正常工作了。


0

所以基本上我创建了一个新项目,复制了所有源代码和文件,一切似乎都很正常。至少应用程序能运行。

我不确定是哪个设置导致了问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接