第31月第15天 -fembed-bitcode
1.
确保打包的时候使用的是fembed-bitcode, 而不是fembed-bitcode-maker
fembed-bitcode-maker:只是简单的标记一下在archive出来的二进制中bitcdoe所在的位置。
fembed-bitcode: 真的会生成bitcode指令,并且嵌入到二进制中,这个设置不止要在app中设置,同样你也必须在编译静态链接库的时候使用。而且需要主题的是该参数系统只默认在archive模式下会添加
//需要注意的是bitcode只默认在archive下编译。在debug和release下并不会。
如果您开发的是app那么走正常的打包archive流程就好了。如果你正在开发.a静态库或者framework,请注意打包方式设置为archive,或者在打包脚本中加入-fembed-bitcode参数。如果需要的话,需要在Build Settings中打开 DEPLOYMENT_POSTPROCESSING=YES,设置Strip Style为debugging。
https://blog.csdn.net/u012198553/article/details/54380856
此时可以用命令来检查导出的.a文件所支持的指令集,lipo -info XXX.a
2.
##检测是否打开Bitcode
当打开bitcdoe选项之后,我们可以使用otool工具来检查二进制文件中是否包含bitcode段。
###针对于静态链接库.a文件
otool -arch armv7 -l xxxx.a | grep __bitcode | wc -l
###检查app或者framework中是否包含bitcode
由于app中二进制和framework中二进制文件与.a文件存在差异,因为需要检查的是__LLVM段,当出现该段的时候,则表示支持bitcdoe,否则不支持。
otool -l xxxx | grep __LLVM | wc -l
这里otool有个bug,当你的framework使用过lipo命令,进行拆解和合并之后,需要指定指令集进行检查才可以。
otool -arch armv7 -l xxxx | grep __LLVM | wc -l
https://github.com/yishuiliunian/yishuiliunian.github.io/blob/ee944fcd0cb2b70cf535145e90877a12be455f66/_posts/2015-11-19-bitcode-open.markdown
第31月第15天 -fembed-bitcode的更多相关文章
- 第31月第25天 xcode debug 限制uitextfiled输入
1.xcode debug 了解了每个设置的意思,个人觉得对于一个普通的app来说可以这样配置这些设置: Generate Debug Symbols:DEBUG和RELEASE下均设为YES(和Xc ...
- 第3月第15天 afconvert lame
1. //CAF 转换成MP3 (可以) afconvert -f mp4f -d aac -b 128000 /Users/amarishuyi/Desktop/sound1.caf/Users/a ...
- 第31月第19天 NV12
1. //设置CIContext,并从CIImage -> CGImage -> UIImage CIContext *context = [CIContext contextWithOp ...
- 第31月第17天 resolveInstanceMethod
1. #import "UIView+Test.h" #import <objc/runtime.h> @implementation UIView (Test) + ...
- 第31月第10天 tableview头部空白 Other Linker Flags rtmp
1.ios10 tableview头部空白 if (@available(iOS 11.0, *)) { self.tableView.contentInsetAdjustmentBehavior = ...
- 第31月 第9天 责任链AppDelegate
1.AppDelegate 到这里我们把解决方案再明确一下:把 AppDelegate 的调用解耦成一个 责任链 模型.并且满足以下特征: 每个模块都可以无限制的实现 AppDelegate 的方法. ...
- 第25月第15天 udacity cs253
1.cs253 https://classroom.udacity.com/courses/cs253 webapp2 Install WebOb, Paste and webapp2¶ We nee ...
- 第16月第15天 glut
1. https://tokoik.github.io/opengl/libglut.html https://github.com/wistaria/wxtest/tree/master/C htt ...
- 第12月第15天 mysqlx boost reswift
1. INSTALL PLUGIN mysqlx SONAME 'mysqlx.so' https://yq.aliyun.com/articles/38288 2. boost boost::sha ...
随机推荐
- day20 hashlib、hmac、subprocess、configparser模块
hashlib模块:加密 import hashlib# 基本使用cipher = hashlib.md5('需要加密的数据的二进制形式'.encode('utf-8'))print(cipher.h ...
- 学习storm实现求和操作
1 storm求和简单操作 主要逻辑,就是spout发送数据源,blot进行处理数据,主要注意的点就是 spout这有个nextTuple自旋,和使用父类的declare..方法声明要发送到下游的名称 ...
- 遍历HashMap的四种方式
转至:https://www.cnblogs.com/Berryxiong/p/6144086.html public static void main(String[] args) { Map< ...
- filebeat-6.4.3-windows-x86_64输出Kafka
配置filebeat.yml文件 filebeat.prospectors: - type: log encoding: utf- enabled: true paths: - e:\log.log ...
- 深度解读Tomcat中的NIO模型(转载)
转自https://www.jianshu.com/p/76ff17bc6dea 一.I/O复用模型解读 Tomcat的NIO是基于I/O复用来实现的.对这点一定要清楚,不然我们的讨论就不在一个逻辑线 ...
- 2019-04-29 EasyWeb下配置Atomikos+SQLServer分布式数据源
初次尝试: 配置Mysql时候使用的是Atomikos+DruidXADataSource,所以觉得配置SQLServer应该也是仅仅配置配置就够了,于是引入JDBC驱动依赖后,配置了文件 sprin ...
- Linux学习之路1
root用户 安装初始系统默认没有启动root用户,如下方式启动: l sudo passwd l 连续输入两次密码,启动root用户 l 再登陆 登陆root用户 l su root l ...
- 数组中的reduce 函数理解
第一次见到reduce 是在js 的高级程序设计中,它的意思是把一个数组减少为一个数,举的例子是数组中元素的求和.它接受一个函数作为参数,函数又有两个参数,一个是prev, 前一个值,一个是next, ...
- Codeforces Round #520 (Div. 2) B. Math 唯一分解定理+贪心
题意:给出一个x 可以做两种操作 ①sqrt(x) 注意必须是完全平方数 ② x*=k (k为任意数) 问能达到的最小的x是多少 思路: 由题意以及 操作 应该联想到唯一分解定理 经过 ...
- 如何规避“Flash中国特供版”
如何规避“Flash中国特供版” 来源 http://blog.sina.com.cn/s/blog_4e1bc3e90102xn0k.html 浏览国内网站,尤其是一些很重要或者很常用,但是很落后 ...