Xcode编辑器的Valid Architecture


今天为大家讲解的是 Xcode编辑器的Valid Architecture参数的意思,字面翻译:有效的架构(即CPU架构)。

Xcode是苹果公司向开发人员提供的集成开发环境(非开源),用于开发Mac OS X,iOS的应用程序。其运行于苹果公司的Mac操作系统下。

iOS的App现在基本都是用llvm在编译,Xcode也提供了各种设置帮助你进行编译参数的设定。里面有一项就是设定编译的体系结构,涉及到的参数包 括:Architectures、Valid Architectures和Build Active Architecture Only。

有些新手对这几个参数往往不知道怎么选择,这里简单介绍一下。

Architectures:这是指你想支持的指令集,比如:armv7,armv7s,或者可以用$(ARCHS_STANDARD_32_BIT)这样的参数

Valid Architectures:这是指你即将编译的指令集

Build Active Architecture Only:是否只编译当前设备适用的指令集(如果这个参数设为YES,那么如果你用iPhone 6调试,最终生成的一个支持arm64指令集的Binary;如果你用iPhone4编译,最终生成一个支持armv7指令集的Binary,所以一般在 DEBUG模式下设为YES,RELEASE设为NO)

这里,我们编译最终支持的指令集是Architectures和Valid Architectures两个参数的交集。

另外,列一下目前常见iOS设备的指令集:

ARMv8/ARM64: iPhone 6(Plus), iPhone 5s, iPad Air(2), Retina iPad Mini(2,3)

ARMv7s: iPhone 5, iPhone 5c, iPad 4

ARMv7: iPhone 3GS, iPhone 4, iPhone 4S, iPod 3G/4G/5G, iPad, iPad 2, iPad 3, iPad Mini

ARMv6: iPhone, iPhone 3G, iPod 1G/2G

时间: 2024-10-03 14:55:51

Xcode编辑器的Valid Architecture的相关文章

坑爹的 ld: symbol(s) not found for architecture armv7

前两天好好的程序在Xcode 8 4s(8.4)真机的时候遇到上图错误,但是在5s.6s上都能正常运行,第一反应百度--然后根据百度经验: 如果真机调试就是 undefined symbols for architecture armv7错误! 发生这种错误通常是project.pbxproj这个文件引起的,尤其在多人合作开发的时候,svn提交不规范可能导致project.pbxproj发生错误,导致文件的引用不在project.pbxproj文件中. xcode项目import文件会根据pro

xcode 编译打包 支持64位 设置

首先说两个时间 1.自2015年2月份开始,新上传到iTunes上面审核的app,必须支持64位,新上传是指第一次上传, 或者没有审核通过过,总之就是在AppStore上面没有上架的app,必须支持64位,包括工程里面的代码和用到的静态库文件 2.如果之前iTunes上面有审核通过的app,现在只是上传升级版本,更新版本去审核,这时也可以提交成功,iTunes上面验证二进制文件可以通过, 不必非得支持64位,但是不要高兴太早,这只是权宜之计,到2015年6月份上传的升级版本还是要支持64位,只是

xcode插件制作

Xcode  插件制作入门 对于 Xcode 5,本文有些地方显得过时了.Xcode 5 现在已经全面转向了 ARC,因此在插件初始化设置方面其实有所改变.另外由于一大批优秀插件的带动(可以参看文章底部链接),很多大神们逐渐加入了插件开发的行列,因此,一个简单的 Template 就显得很必要了.在 Github 上的这个 repo 里,包含了一个 Xcode 5 的插件的 Template 工程,省去了每次从头开始建立插件工程的麻烦,大家可以直接下载使用. 另外值得一提的是,在 Xcode 5

xcode project navogator 不显示工程文件

妈妈咪呀,今天遇到了一个无比蛋疼的事.改了两个多小时.终于解决掉了,可能是xcode的bug吧 具体是这样的,我打开了xcode,然后在git中各种添加删除分支,切换分支,然后再打开项目发现只有在xcode中打开的文件还在project navigator中老老实实的躺着,其他的都不见了.我以为是plist文件改动了,这顿折腾啊.但是我发现,在xcode编辑器上方的路径条可以看到所有的目录,然后我就没法淡定了.各种重新clone,各种删除项目缓存.到了最后我发现一个选项在xcode的主菜单目录中

iOS 一个工程中引用其他工程时编译的Architecture问题

当引用了其他工程时,在编译时报错,提示你编译指令架构不对,你需要查看一下这几个工程的Architecture部分是否又冲突,比如主工程设置Valid Architecture为armv7 而 另一个子工程却设置了build active architecture only 为yes,这时如果你插入了armv7s的设备,编译就会报错,因为子工程编译出来的库文件是armv7s的,而主工程需要的是armv7的,就报错了!最好把build active architecture only 设置为NO,并

[xcode]Xcode查找函数(方法)调用及被调用

参考资料:http://stackoverflow.com/questions/7145045/find-method-references-in-xcode 这个功能有的说是 Find Caller,有的说是Find references,有的说是Find Usages 直白的讲,就是我需要知道这个函数(方法)在哪里被调用了,这个功能在看别人源码时相当有用. 操作方法: 1.将鼠标光标定位到你所关注的函数(方法) 2.打开“Relate Files”菜单,在Xcode编辑器的左上角 3.选“C

Xcode制作插件

转发至:https://onevcat.com/2013/02/xcode-plugin/ Xcode 4 插件制作入门 本文欢迎转载,但烦请保留此行出处信息:http://www.onevcat.com/2013/02/xcode-plugin/ 2014.5.4更新 对于 Xcode 5,本文有些地方显得过时了.Xcode 5 现在已经全面转向了 ARC,因此在插件初始化设置方面其实有所改变.另外由于一大批优秀插件的带动(可以参看文章底部链接),很多大神们逐渐加入了插件开发的行列,因此,一个

libuv移植到ios

libuv官网只提供了os x的编译方法,没有IOS的.既然os x和ios的系统内核差不多,并且编译工具都是xcode,那我们只要重新指定cpu架构,就可以编译出ios版的了. 1.安装python,官网上有os x版的:python.org/download,下载Python 3.x Mac Installer disk image2.打开image,里边的安装文件是pythom.mpkg,双击是打不开的,要右键--打开方式--安装器.3.安装后,打开终端,输入python,查看安装是否成功

Universal Framework for iOS

Hello my friends, Due to some bugs and questions with the old tutorial, I'm creating this new one, much more simpler and less bugs than the another one. I'll not post the old link here because everything you need to know you can find right here. Nowa