【问题标题】:Xcode cannot run using the selected device after upgrade to Xcode 5.0升级到 Xcode 5.0 后,Xcode 无法使用所选设备运行
【发布时间】:2013-09-30 05:02:35
【问题描述】:

我今天升级到 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,但这也不起作用

【问题讨论】:

    标签: xcode build ios-simulator instruments


    【解决方案1】:

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

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

    【讨论】:

    • 谢谢!这让我困惑了好几个小时。由于 LLVM 错误,我实际上在以前的版本中切换到了 GCC。
    • 这不是我的解决方案。我的项目已经设置为使用 LLVM 5.0 进行编译。
    • 这对我有用,除了将 Info.plist 中的 CFBundleExecutable 设置为 ${EXECUTABLE_NAME}
    • 非常好!你节省了我的时间;)
    【解决方案2】:

    请按照以下步骤进行

    1>进入项目构建设置

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

    【讨论】:

    • 谢谢,特别是截图!
    • 谢谢它节省了我的时间!!上面的答案也是一样的,但是你用屏幕截图让我们很容易。 @Chirs Alen
    【解决方案3】:

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

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

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

    【讨论】:

    • 多年后打开一个旧项目时,这发生在我身上(还有缺少的方案)。谢谢!!
    • 我使用的是 Xcode 5.1.1,但在构建规则下看不到 FILES 选项。还有其他方法可以找到第二个更改吗?
    【解决方案4】:

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

    【讨论】:

      【解决方案5】:

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

      【讨论】:

        【解决方案6】:

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

        退出并重新启动 Xcode

        【讨论】:

          【解决方案7】:

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

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

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

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

          【讨论】:

            【解决方案8】:

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

            【讨论】:

              猜你喜欢
              • 2012-09-26
              • 2015-11-22
              • 2011-07-19
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2014-07-13
              相关资源
              最近更新 更多