Xcode无法在选定的目标上运行
我今天早上正在运行我的应用程序,现在突然间,当我尝试在iPhone 5.1模拟器上运行时出现以下错误。
无法在选定的目的地上运行
目标不支持所选软件构build的体系结构。 切换到支持该体系结构的目标以运行选定的软件。
我删除了这些scheme,但仍然没有解决办法
我正在使用山狮。 我正在使用xCode 4.4(最近升级到Mountain Lion和xCode 4.4)
更新1:这是我的构build设置的视图:
更新:这是防止它运行的实际错误。
您可以按照以下步骤操作:
- 退出Xcode和iPhone模拟器
- 拔下您的设备
- Goto
/Users/your_usr_name/Library/Developer/Xcode/DerivedData/
- 删除此文件夹下的所有数据
- 再次启动Xcode并运行你的项目
希望这会解决你的问题。
从Facebook SDK 3.1更新到Facebook SDK 3.1.1之后,我遇到了这个问题。 我想我的错
里面的“资源”文件夹,现在有一个完全没用,但危险的info.plist,如果导入,可能会打破你的项目文件。 不知道他们为什么把它包括在内,但我相信我们中的很less人最近犯了同样的错误。
我发现这个问题与Xcode 4.4的版本。 最后我解决了这个问题:
find你的项目中的“Info.plist”,然后取消select目标成员加上窗口的右侧视图,它适用于我。
您可能还需要检查项目设置中是否使用受支持的编译器
它只是复制Info.plist文件只是在文件中使用1 Info.plist文件,然后重新启动xcode其固定的我
我刚刚在Xcode 4.5.1中遇到了这个错误,并且在将所有非字母字符带出 Product Name
构build设置之后,错误消失了 。
我相信这可能是目前与Xcode 4.4 +未列出的错误。 我和我的项目有同样的问题。 我删除了Xcode的所有版本,并用4.4重新启动,打开我的项目,并再次出现错误。
然后我用一个不同名字的模板开始了一个新项目。 没有问题。
然后,我重命名我的旧项目,开始一个新的同名空项目,并build立/运行,并再次得到错误。 这个新项目只不过是一个没有做任何事情的视图控制器。 我应该得到一个空白的屏幕,但你有同样的错误。
沮丧的我closures了一天,重新运行旧项目,它的工作。 我没有改变任何东西。 目前我再次出现错误,无论是重新启动或重新启动Xcode修复它。
所以总的来说,一个项目可以完全不做任何修改,有时它会build立并运行良好,有时你会得到这个错误。 对于logging,我没有得到运行Xcode 4.3的这个错误。
我的问题没有出现,直到我升级到山狮和Xcode 4.4碰巧是在同一天。 现在我不能回到100%可行的configuration。
提交我的文件到SVN和检出项目在一个新的目录中解决了这个问题。
看看这个架构下的项目和目标构build设置,看看是否有任何改变。 当第一次从Xcode 3进入到4时,它会以隐藏的方式破坏破坏,给出相同的错误,最后你必须将i386添加到“Valid Architectures”行。 我只是看着我在Xcode 4.1中开始的大项目,它没有显示任何关于i386等,但我有其他更新的项目,我在这一行$(ARCHS_STANDARD_32_BIT)得到这个灰色的东西。
编辑:我重新看了这个与大师的朋友。 我们都不能在我们的项目中find与i386的联系 – Xcode使用了一些魔法。 也就是说,在这个项目中,我在一个二进制的plist中遇到了i386,这引出了另外一个build议。
在您的构build设置中,确保所有“架构”都是$(ARCHS_STANDARD_32_BIT)。
如果这不起作用,我们build议您在scheme菜单中selectiPhone 5.1 Simulator时查看编译的编译和生成线,以查看实际上它的i386,
另一个想法 – 将所有的scheme和用户设置移到保存文件夹的某处(closures项目),然后重新打开并重新创build一个scheme。 现在再试一次。 在我的任何project.pbxproj文件中都没有提到i386,所以我们怀疑这是与目标设备的scheme设置有关。
祝你好运!
我已经解决了在项目和目标构build设置中将“构build变体”从“armv7”更改为“正常”
除了删除这个目录下的所有文件Users / your_usr_name / Library / Developer / Xcode / DerivedData /
我重新启动我的Mac,它工作正常(重新启动Xcode和模拟器没有削减我)
我遇到了同样的问题。 就我而言,似乎是我改变了我的多目标项目的Bundle Name而不是产品名称。 一旦我通过正确编辑“项目名称”,然后将“捆绑软件名称”设置回$ {PRODUCT_NAME},就可以在模拟器中再次运行。
这可能不是每个人的答案,但是似乎产品命名错误(特殊字符,空格等等)对许多人来说都是贡献者,这就是让我回顾我所拥有的重命名的原因。
我的项目面临同样的问题。 这是对情况和我决议的简要解释。 这可能会或可能不会在你的情况下工作。
我在一个有多个iOS项目的地方工作。 我最近有系统升级到Mac OSX 10.8和Xcode 4.4.1。 我正在开发一个项目,这个项目最初是build立在iOS 4的Xcode 4.1的基础上的。由于Xcode的iOS 4模拟器直到4.3,所以这个项目在所有的模拟器上都能够正常运行。 然而,在Xcode 4.4.1中,我没有findiOS 4模拟器,也没有简单的方法来安装它们,这就是为什么我得到“无法在选定的目标上运行”错误。 这是我如何让我的项目运行。
-
检查“
Build Settings > Architectures
下的所有configuration文件,然后将体系Build Settings > Architectures
设置为Standard (armv7)
或${ARCHS_STANDARD_32_BIT}
。 -
设置
Base SDK
到Latest iOS(<ios version #>)
5.1在我的情况。 -
将所有configuration文件的
Build Active Architecture Only
设置为NO
。 -
为所有configuration文件设置
Valid Architectures
为armv6 armv7
。 您可能需要添加取决于什么已经可用。 -
设置
iOS Deployment Target
到iOS 5.1
(在我的情况)。 -
确保您在项目的“
Summary
选项卡下的“Deployment Target
下具有相同的目标。
清洁和运行,并交叉手指!
在我的情况下,问题发生在删除整个资源文件夹后,从其他或旧项目复制资源文件夹在当前一个,然后添加回该文件夹。
我在分析工具的帮助下解决了这个问题:分析之后,我在“复制软件包资源”中关注Info.plist。
只需去复制包资源(在生成短语标签)删除Info.plist,然后重新启动Xcode,清理并build立。 我的项目恢复正常。
希望帮助某人:)
我想很多这些解决scheme都迫使我彻底重build,这就是为我解决了这个问题。
我做了Product => Clean,问题就消失了。
对我来说,这工作: – 检查所有的产品参考是一致的设置和plists。 另外检查产品名称不包含任何SPACE或其他“非法”字符。
尝试重命名您的项目。 我通过这种方式解决了。
从反应来看,这种types的错误有很多潜在的来源,所以这里是我自己的(毫无意义的)错误版本(以及简单的解决scheme):
- XCode项目构build设置可以设置在两个级别:项目级别和目标级别。 对于那些不太熟悉的人来说,目标级别就是你有可执行应用程序的地方,而且通常还有其他一些项目,比如dynamic库构build。
- 在Build Settings的Linking部分有一个Mach-O Type的选项,您可以在其中设置Executable,Dynamic Library,Static Library等。
- 我在准备dynamic库时遇到了麻烦,正在扫描项目的构build设置,看到Mach-O是空白的。 所以我设置了dynamic库。 然后,我继续审查了几件事,忘记了我做了这个改变。 但是我没有意识到我处于整个项目层面,而不是实际dynamic库的目标层面。 这将所有目标Mach-O设置改为dynamic库。
- 当然,可执行目标不喜欢被当作一个dynamic库,并且我得到了OP的错误信息。
- 将可执行文件设置回目标级别的可执行文件Mach-O将修复所有的问题。 烦人的项目级设置仍然说dynamic库,但具有正确的目标级设置都运行良好。
傻,我知道,但因为上面列出的几个更激烈的解决scheme将间接地解决这个错误,我想我会分享,以防其他人犯了同样的错误!
我解决这个错误的方法是在我的项目中添加一个虚拟函数。 我的问题是我的应用程序没有自己的代码,只有链接的代码 。
我有两个项目的不寻常的情况:一个“应用程序”的父母和一个“引擎”的孩子。 所有可编译的代码都在subprocess中,父进程只与subprocess链接,将大量的特定于应用程序的资源复制到项目中。
显然这个悲伤的Xcode,导致上述错误。
我的解决scheme是将这个C函数/文件添加到App项目中:
int workaround_for_xcode_reporting_cannot_run_on_selected_destination(){return 0;}
我从时间机器恢复数据。 注意,这与1小时前存储的数据完全相同。 这个问题昨天开始了。 所以应该是相同的数据。
然而,它的工作。
我尝试了一切在这里提到。 没有工作。 似乎我以某种方式两次导入Info.plist。 要解决它,我select了项目,并按下“validation设置”button。 之后它适用于我。
经过半天的实验,我认为这意味着debugging器无法find您的可执行文件启动。 我认为这是一个重要的区别于以前的答案,因为它的一个潜在的原因,可以有很多的症状。 在我的情况下,它不能协调一个自定义生成的应用程序Info.plist,我们正在复制plist的构build。 我将构build设置更改为AltDebug的Alt-Info.plist,并将其修复。 也意味着不再复制。
您的根本原因可能会有所不同,所以关键是要考虑为什么Xcode可能无法find您的内置应用程序。
你会很高兴知道这个问题有一个非常简单的解决scheme。 在项目导航器树中selectInfo.plist,并确保它没有分配给目标。 我已经证实这是正确的解决scheme。 如果为iOS 6或更早版本构build,则可能还需要将armv6添加到支持的体系结构
升级到Mountain Lion和XCode 4.4.1之后,我遇到了这个问题,用于OSX项目。 要解决这个问题,我必须将我的部署目标升级到10.5或更高; 它被设置为10.4和以上。
你必须在“Activity Monitor”中findXcode进程并杀死它! 我只是做了解决类似的问题!
我意外地删除了资源文件夹后,当我再次将其添加到项目,巴姆!
我也在运行Mountain Lion和XCode 4.4!
试图找出是什么原因导致这个,但它似乎被复制,当你删除然后添加info.plist文件! 有人可以证实吗?
发生两件事情后,我遇到了同样的问题:
- 我升级到Facebook SDK 3.1
- 我更新了我的OSX(小版本更新)
我唯一的解决办法是添加armv7s(最后介意“s”)。像这样: https ://stackoverflow.com/a/12540654/531527
又一个变体解决scheme:在尝试了上面列表中的所有内容之后,我解决了TestFlightSDK1path无法find的警告。 为此,我从标题searchpath(“生成设置”>“searchpath”)中删除了相关path,并删除了TestFlightSDK,现在运行得很好。
我从一开始就看到这个问题,仿真器无法处理虚拟智能卡。 不幸的是,我最终只是使用我的Android手机通过USB连接。
从复制包资源构build阶段删除Info.plist,这对我有效!