学向勤中得,萤窗万卷书。这篇文章主要讲述archive 打包出错apple mach-o linker (id) error相关的知识,希望能为你提供帮助。
bitcodeapple mach-o linker (id) error1: 情形:
编译真机运行都可以,就打包时报错
报错内容
ld: bitcode bundle could not be generated because \'/Users/liuyuning/Desktop/TestDecode/Decode/libDecode.a(Decode.o)\' was built without full bitcode. All object files and libraries for bitcode must be generated from Xcode Archive or Install build for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
文章图片
2: Bitcode是苹果在Xcode7及以后推出的新功能。用于代码的二次编译,针对CPU进行优化,编译工作由苹果AppStore后台来完成。
针对ios是可选项,默认打开。watchOS 和 tvOS 是必选项。苹果文档如下
这时,就需要给静态库的工程增加一个选项“-fembed-bitcode”。之后就可以正常Archive了。
增加“-fembed-bitcode”
文章图片
另外,如果静态库的工程有 -Werror 的选项,需要去掉。应为在编译的时候有一个警告。 clang: warning: argument unused during compilation: \'-fembed-bitcode-marker\'
如果不去掉就会报错。
文章图片
3:如果方法二无效,如果
文章图片
那么你选择的第三发SDK也一定也要支持bitcode 为YES
【archive 打包出错apple mach-o linker (id) error】
推荐阅读
- Android开发环境搭建(Windows)
- appium元素定位
- Mac上搭建Xcode9.0+appium1.6.5过程及链接模拟器测试app
- Android SDK安装笔记
- 3 Ways to Generate vCenter Support Bundle in vCenter Server Appliance
- Android 中的 Matrix
- [Android]Anreoid repo 切换分支
- 资源共享RK3399《VR Android参数配置和调试说明》
- 安卓startActivityForResult用法