XCode 4.5-架构armv7的未定义符号 [英] XCode 4.5 - Undefined symbols for architecture armv7

查看:103
本文介绍了XCode 4.5-架构armv7的未定义符号的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是iOS开发的新手,并且已完成将旧版应用程序更新到iOS6的任务.该应用程序是使用Unity构建的.在XCode 4.5中,当我尝试在设备(iPhone 4)上运行Unity-iPhone应用程序时,出现以下错误:

I'm brand new to iOS development, and I've been given the task of updating a legacy app to iOS6. The app was built with Unity. In XCode 4.5, when I try to run the Unity-iPhone app on my device (iPhone 4), I get this error:

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

我转到了目标的构建设置,并注意到为架构和有效架构设置了armv6.我将这两个设置都更改为Standard(armv7,armv7s).当我尝试运行该项目时,出现了104个这样的编译器错误:

I went to the build settings for the target, and noticed that armv6 was set for architectures and valid architectures. I changed both of these settings to be Standard(armv7, armv7s). When I tried to run the project, I got 104 compiler errors like this one:

Undefined symbols for architecture armv7:
  "ForceInclude_BaseBehaviourManager()", referenced from:
      RegisterManagerClasses() in RegisterClasses.o

因此,不仅仅是将正确的框架导入项目中.这些都是源文件之一中的所有方法.如何为armv7取消定义它们?另外,如何解决这个问题?

So, it's not just a matter of importing the right frameworks into the project. These are all methods in one of the source files. How can they be undefined for armv7? Also, how would one solve this issue?

推荐答案

注意:对于在设备上运行的应用程序,设备IOS版本必须与IOS部署目标匹配 参见下图:

NOTE: For running app in device the device IOS version must match with the IOS DEPLOYEMENT TARGET see below image:

只需使用设备IOS更改IOS部署目标即可.

Just change the IOS DEPLOYEMENT TARGET with Your Device IOS.

选择项目->选择信息(选项卡)->从下拉框中选择IOS部署目标

Select Project->Select Info(tab)->select the IOS deployment Target from the drop down box

还请注意:Xcode 4.5(及更高版本)不支持生成armv6二进制文件.

ALSO NOTE :Xcode 4.5 (and later) does not support generating armv6 binaries.

这篇关于XCode 4.5-架构armv7的未定义符号的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆