iOS Failed to find matching arch for 64-bit Mach-O input file

从哪看到的一篇博客我忘了,这里就不加链接了。

takeshi-mato-iPhone itunesstored →  <Warning>: [ApplicationWorkspace]: Failed to install application: cn.ac.sec.HealthCareDoctor; /var/mobile/Media/Downloads/2686208517752305961/4992622475604659910; Error Domain=LaunchServicesError Code=0 "(null)" UserInfo={Error=IncorrectArchitecture, ErrorDescription=Failed to find matching arch for 64-bit Mach-O input file /private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.K3my5D/extracted/Payload/HealthCareDoctor.app/HealthCareDoctor}

少打包了一种编辑器,在build setting里
build active architecture only 把release 设置为NO,才能包含所有的编译器

这个属性设置为yes,是为了debug的时候编译速度更快,它只编译当前的architecture版本。
而设置为no时,会编译所有的版本。
这个是设备对应的architecture:
  
  
  1. ARMv8/ARM64: iPhone 6(Plus), iPhone 5s, iPad Air(2), Retina iPadMini(2,3)

    ARMv7s: iPhone 5, iPhone 5c, iPad 4 

    ARMv7: iPhone 3GS, iPhone 4, iPhone 4S, iPod 3G/4G/5G, iPad, iPad2, iPad 3, iPadMini   

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

编译出的版本是向下兼容的,比如你设置此值为yes,用iphone4编译出来的是armv7版本的,iphone5也可以运行,但是armv6的设备就不能运行。
所以,一般debug的时候可以选择设置为yes,release的时候要改为no,以适应不同设备。


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值