ios – 启用Bitcode导出时出错(架构armv7找不到符号)

ios – 启用Bitcode导出时出错(架构armv7找不到符号),第1张

概述我有一个相当旧的项目,最低部署目标设置为iOS 8.4.由于技术原因,必须启用bitcode.该项目建立并运行良好.然而,当尝试导出存档的构建时,事情就出错了.我正在使用 Xcode 8.2.1. 当我使用选项Rebuild from bitcode创建测试版本(使用Enterprise证书签名)时,导出在编译bitcode时失败. 以下是日志的相关部分: "/Applications/Xcode 我有一个相当旧的项目,最低部署目标设置为iOS 8.4.由于技术原因,必须启用bitcode.该项目建立并运行良好.然而,当尝试导出存档的构建时,事情就出错了.我正在使用 Xcode 8.2.1.

当我使用选项Rebuild from bitcode创建测试版本(使用Enterprise证书签名)时,导出在编译bitcode时失败.

以下是日志的相关部分:

"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/lib/darwin/libclang_rt.ios.a" "-o" "/private/var/folders/qy/cgq_nq7x2tx1j3z__7f4yx100000gn/T/<redacted target name>WX9bPu/<redacted target name>.armv7.out"     -= Output =-    Undefined symbols for architecture armv7:      "_llvm_gcov_init",referenced from:          __hIDden#2_ in 001.o          __hIDden#3_ in 001.o          __hIDden#4_ in 001.o          __hIDden#5_ in 001.o          __hIDden#6_ in 001.o          __hIDden#7_ in 001.o          __hIDden#8_ in 001.o          ...      "_llvm_gcda_end_file",referenced from:          __hIDden#0_ in 001.o          __hIDden#0_ in 002.o          __hIDden#0_ in 003.o          __hIDden#0_ in 004.o          __hIDden#0_ in 005.o          __hIDden#0_ in 006.o          __hIDden#0_ in 007.o          ...      "_llvm_gcda_emit_function",referenced from:          __hIDden#0_ in 001.o          __hIDden#0_ in 002.o          __hIDden#0_ in 004.o          __hIDden#0_ in 005.o          __hIDden#0_ in 006.o          __hIDden#0_ in 007.o          __hIDden#0_ in 008.o          ...      "_llvm_gcda_emit_arcs",referenced from:          __hIDden#0_ in 001.o          __hIDden#0_ in 002.o          __hIDden#0_ in 004.o          __hIDden#0_ in 005.o          __hIDden#0_ in 006.o          __hIDden#0_ in 007.o          __hIDden#0_ in 008.o          ...      "_llvm_gcda_start_file",referenced from:          __hIDden#0_ in 001.o          __hIDden#0_ in 002.o          __hIDden#0_ in 003.o          __hIDden#0_ in 004.o          __hIDden#0_ in 005.o          __hIDden#0_ in 006.o          __hIDden#0_ in 007.o          ...      "_llvm_gcda_summary_info",referenced from:          __hIDden#0_ in 001.o          __hIDden#0_ in 002.o          __hIDden#0_ in 003.o          __hIDden#0_ in 004.o          __hIDden#0_ in 005.o          __hIDden#0_ in 006.o          __hIDden#0_ in 007.o          ...    ld: symbol(s) not found for architecture armv7    Exited with 1    error: Failed to compile bundle: /var/folders/qy/cgq_nq7x2tx1j3z__7f4yx100000gn/T/<redacted target name>WX9bPu/<redacted target name>.armv7.xarStderr:>    /Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:202:in `run'    /Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:1987:in `block in CompileOrStripBitcodeInBundle'    /Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:1944:in `each'    /Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:1944:in `CompileOrStripBitcodeInBundle'    /Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:2119:in `ProcessIPA'    /Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:2687:in `<main>'";            info =             {            };            level = ERROR;            type = exception;        }    );    thinnableAssetCatalogs =     (        "/var/folders/qy/cgq_nq7x2tx1j3z__7f4yx100000gn/T/XcodedistPipeline.hn6/Root/Payload/<redacted target name>.app/Assets.car"    );}2017-03-31 12:21:37 +0000 [MT] Exporting using IDEdistributionPackageExportStep2017-03-31 12:21:58 +0000 [MT] Canceled distribution assistant

当我从bitcode禁用Rebuild时,导出成功,生成的构建运行正常.但是,当构建将提交给iTunes Connect时,我担心会出现问题.

有没有人知道为什么会出现这个错误以及如何解决这个问题?我在这里有点不知所措.

编辑:

澄清:是的,bitcode在目标级别启用.以下是链接库:

这些是依赖项:

# Reportingpod 'Fabric'pod 'Crashlytics'pod 'GoogleAnalytics'pod 'CocoaLumberjack','~> 1.6.2'# Networkingpod 'AFNetworking','~> 2.6.3'pod 'RestKit','~> 0.27'pod 'Reachability'# Otherpod 'UIcolor-UtilitIEs','~> 1.0.1'pod 'VIEwDeck','~> 2.4'pod 'SDWebImage','~> 3.7.0'pod 'AMratingControl','~> 1.3.0'
解决方法 经过一些试验和错误以及 Sven Drielecker(和其他人)的有用建议后,问题已得到解决.

对于调试和发布版本,GCC_INSTRUMENT_PROGRAM_FLOW_ARCS构建设置都设置为YES.将其关闭以便发布已经解决了这个问题.

总结

以上是内存溢出为你收集整理的ios – 启用Bitcode导出时出错(架构armv7找不到符号)全部内容,希望文章能够帮你解决ios – 启用Bitcode导出时出错(架构armv7找不到符号)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1104624.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存