Undefined symbols for architecture x86_64 解决之道

目前临时的解决办法是 

1.把1.选中Targets—>Build Settings—>Architectures。

把build active architectures only 改为 NO。

2. 把最下面的Valid Architectures中的arm64参数删掉就可以了

或者:

  双击Architectures,选择other,删除$(ARCH_STANDARD),然后增加armv7和armv7s(写上:armv7和armv7s) 即 :armv7和armv7s $(ARCHS_STANDARD_32_BIT)

 

ios的指令集有以下几种:

 

1,armv6,支撑的机械iPhone,iPhone2,iPhone3G及对应的iTouch

2,armv7,支撑的机械iPhone4,iPhone4S

3,armv7s,支撑的机械iPhone5,iPhone5C

4,arm64,支撑的机械:iPhone5S

机械对指令集的支撑是向下兼容的,是以armv7的指令集是可以运行在iphone5S的,只是效力没那么高罢了~

Architecture : 指你想支撑的指令集。

Valid architectures : 指即将编译的指令集。

Build Active Architecture Only : 只是否只编译当前实用的指令集。

========

如今是2014年初,其实4和4S的用户还是蛮多的,而iphone3之类的机械几乎没有了,所以我们的指令集最低必须基于armv7.

是以,Architecture的值选择:armv7 armv7s arm64(选arm64时须要最低支撑5.1.1,这块不太熟悉打听)

1,若是想本身的app在各个机械都可以或许最高效力的运行,则须要将Build Active Architecture Only改为NO,Valid architectures选择对应的指令集:armv7 armv7s arm64。这个会为各个指令集编译对应的代码,是以最后的 ipa体积根蒂根基翻了3倍。(若是不在乎app大小的话,应当如许做)

 

,若是想让app体积对峙最小,则现阶段应当选择Valid architectures为armv7,如许Build Active Architecture Only选YES或NO就无所谓了

 

转载于:https://www.cnblogs.com/zhujin/p/3942054.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值