Build由于LLVM仪器符号或代码覆盖率而被苹果拒绝,尽管找不到



我最近向TestFlight提交了一个构建,但它被拒绝了,并出现以下错误:

无效捆绑包-不允许LLVM插入。不提交应用启用LLVM分析工具或覆盖率收集。关闭LLVM分析或代码覆盖,重新构建您的应用程序,然后重新提交应用程序。

苹果的技术问答;A建议运行以下命令,以查找生成是否启用了任何LLMV Instrumentation符号或代码覆盖率,但结果为阴性。

$ nm -m -arch all <PathToArchive>/Products/Applications/<AppName>.app/<AppBinary> | grep gcov
$ otool -l -arch all <PathToArchive>/Products/Applications/<AppName>.app/<AppBinary> | grep __llvm_prf

carlossless的一个有用要点也没有显示任何LLMV仪器符号。有什么办法解决这个问题吗?

问题是应用程序中使用的内部SDK pod是在没有的情况下构建的

GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=无

CLANG_ENABLE_CODE_COVERAGE=无

xcodebuild中的

标志。当我们使用以下命令构建SDK时,该构建被Apple接受:

xcodebuild -workspace "${FRAMEWORK_NAME}.xcworkspace" -scheme "${FRAMEWORK_NAME}" -configuration "${CONFIGURATION}" -arch arm64 -arch armv7 -arch armv7s only_active_arch=no CLANG_ENABLE_CODE_COVERAGE=NO GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=NO BITCODE_GENERATION_MODE=bitcode defines_module=yes -sdk "iphoneos" -derivedDataPath "${OUTPUT_DIR}"

Carlossless在这篇文章中对此做了很好的解释。

相关内容

最新更新