Archive 之 Undefined symbols for architecture armv7

背景:要集成一个小团队开发的sdk,真机上运行没有问题,模拟器却出现了下面的错误
屏幕快照 2018-03-08 下午4.59.17.png

而客户又要急着让我交测试版本。我就想先打个测试包吧。结果archive的时候还是上面那个错误。
这个sdk应该室友问题了,应该是缺少了armv7的框架了,就上网查了一下,哪些iPhone机型是需要armv7支持的

其中支持Armv6的设备为:  

* iPhone1   
* iPhone3G  
* iPod Touch 1  
* iPod Touch 2
支持Armv7的设备为:

* iPhone 3GS  
* iPhone 4  
* iPad   
* The New iPad  
* iPod Touch 3G  
* iPod Touch 4
支持Armv7s的设备为:  

* iPhone5

那我想着在APP支持的平台里面不支持这些iPhone设备不就可以archive通过了吗。
屏幕快照 2018-03-09 上午11.42.44.png

就想着在Supported Platforms的release里面删除iphoneos,只添加自己要的机型不就可以了吗,结果,刚开始Archive就不行。报了什么错我不记得了。

那我又想,既然armv7报错,那我干脆删除项目对armv7的兼容不就可以了吗。
屏幕快照 2018-03-09 上午9.33.18.png
,接着archive,还是提示缺少armv7框架,我是这样想的,要支持所有机型,iPhone5和iPhone5s分别要需要armv7和armv7s框架,Vaild Architectures删除是没用的。
Valid Architectures
app预期将要应用到的架构。默认与Architectures的值相同。
这个选项让你可以在编译的时候只打包Armv7s架构,但是兼容Armv6,Armv7。

算了,还是让他们重新给我打个sdk吧。他们添加个armv7框架用几行脚本就可以了。我看了一下他们提空给我的sdk,是不支持armv7的,跟我想的一样。
屏幕快照 2018-03-09 上午9.31.34.png

他们重新把armv7和armv7s框架添加进去以后,模拟器和archive都没问题了。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容