26

我今天升级到 xcode 5.0。然后我按下 play 在 iOS 模拟器中运行我的项目。这最初是有效的。然后我决定要运行分析器。当我这样做时,我收到了消息:

Xcode cannot run using the selected device. 
Choose a destination with a supported architecture in order to run on this device.

我查看了过去有关此问题的几篇帖子,并决定进行清理和构建。现在我不能再在分析器或模拟器中运行了。我一直收到这样的信息:

Xcode cannot run using the selected device. 
Choose a destination with a supported architecture in order to run on this device.

我该如何解决这个问题?

以下是各种设置:

我的部署目标是 6.1

我的构建设置架构如下所示:

我也尝试将部署目标更改为 7.0,但这也不起作用

4

8 回答 8

77

正如错误所暗示的那样,该问题似乎与构建设置中的体系结构无关。相反,我发现问题似乎与 C/C++/Objective C 的构建选项编译器有关。我使用的是 gcc 编译器 (com.apple.compilers.llvmgcc42),而 Xcode 5 已将此标记为不受支持。

如果我将编译器更改为苹果的默认 Apple LLVM 5.0,项目将构建并且它现在可以在模拟器中运行。缺点是我有很多来自与 cocos2D v1.0 源代码相关的代码的编译器警告。但是,至少我还有前进的道路。

于 2013-09-24T20:23:16.647 回答
34

请按照以下步骤

1>转到项目构建设置

2>将 c/c++/objective c 的编译器更改为默认编译器(Apple LLVM 5.0)(见下图)

在此处输入图像描述

于 2013-11-09T13:46:36.520 回答
10

我不得不在两个地方更改默认编译器(Apple LLVM 5.0)的编译器:

  1. 构建设置 > 构建选项 > C/C++/Objective-C 编译器(更改为 LLVM)
  2. 使用 GCC 构建规则 > 文件 *.mc(更改为 LLVM)

很难找到,因为即使构建规则指向未定义的编译器,代码也会编译。

于 2014-02-09T16:13:17.807 回答
7

检查所有构建设置 15 分钟后,这对我有用(Xcode 5.0.2):

退出并重新启动 Xcode

于 2014-03-07T14:00:52.887 回答
6

检查 Info.plist 文件中的可执行文件(也称为 CFBundleExecutable)是否设置为${EXECUTABLE_NAME},而不是任何硬编码值。这将确保即使您更改项目名称或目标名称或方案名称,它仍然有效。

于 2014-03-06T13:08:54.810 回答
3

在旧项目上复制目标后,通常会出现此问题。

在 Info.plist 中为目标设置以下内容:

Bundle Name = ${PRODUCT_NAME}
Bundle Display Name = ${PRODUCT_NAME}
Executable file = ${EXECUTABLE_NAME}

使用这些设置构建和运行,在成功构建后,它们可以更改为您想要的任何内容。

于 2014-03-26T11:47:27.447 回答
1

这对我有用:“退出并重新启动 Xcode”。我最近更新了一些东西,Xcode 上的测试设备说:“iDevice”不是 iPhone 或 iPod。所以我重新启动,然后我的 iPhone 又回到了目标列表。

于 2014-04-28T04:25:48.067 回答
0

当我在目标属性中更改“捆绑名称”键的值时出现此错误。将其改回“%{PRODUCT_NAME}”为我解决了这个问题。

于 2014-02-26T10:19:57.347 回答