Xcode 12 存档失败:ipatool 失败并出现异常:#<CmdSpec::NonZeroExitException
Xcode 12 archive failed: ipatool failed with an exception: #<CmdSpec::NonZeroExitException
我已经为这个错误苦苦挣扎了 2 周,并且我尝试了几乎所有在线可用的解决方案。尝试导出临时 ipa 时,出现以下错误:
{
code = 1061;
description = "ipatool failed with an exception: #<CmdSpec::NonZeroExitException: $ /Applications/Xcode_new.app/Contents/Developer/usr/bin/python3
/Applications/Xcode_new.app/Contents/Developer/usr/bin/bitcode-build-tool
-v -t /Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
-L /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-out/arm64/Payload/HelloWorld.app/Frameworks/XYZ.framework
-L /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-out/arm64/Payload/HelloWorld.app/Frameworks
--sdk /Applications/Xcode_new.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk
-o /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-out/arm64/Payload/HelloWorld.app/HelloWorld
--generate-dsym /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-out/arm64/Payload/HelloWorld.app/HelloWorld.dSYM
--strip-swift-symbols /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-in/arm64/Payload/HelloWorld.app/HelloWorld\nStatus:
pid 12181 exit 1\nStdout:\n SDK path:
/Applications/Xcode_new.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk\n
SDK version: 14.0\n PATH:
['/Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin',
'/Applications/Xcode_new.app/Contents/Developer/usr/bin']\n Using:
/Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lipo\n
MachoInfo: cd /\n
['/Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lipo',
'-info',
'/var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-in/arm64/Payload/HelloWorld.app/HelloWorld']\n
-= Output =-\n Non-fat file: /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-in/arm64/Payload/HelloWorld.app/HelloWorld
is architecture: arm64\n Exited with 0\n \n Command took 0
seconds\n Using:
/Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/dwarfdump\n
GetUUID: cd /\n
['/Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/dwarfdump',
'-u',
'/var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-in/arm64/Payload/HelloWorld.app/HelloWorld']\n
-= Output =-\n UUID: E5D8E7AF-7D34-32E1-9337-A84BC4389DFC (arm64) /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-in/arm64/Payload/HelloWorld.app/HelloWorld\n
Exited with 0\n \n Command took 0 seconds\n Using:
/Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/segedit\n
ExtractXAR: cd /\n
['/Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/segedit',
'/var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-in/arm64/Payload/HelloWorld.app/HelloWorld',
'-extract', 'LLVM', 'bundle',
'/var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/HelloWorld8zix1rk8/HelloWorld.arm64.xar']\n
-= Output =-\n Exited with 0\n \n Command took 0 seconds\n Bitcode bundle version: 1.0\n Setting platform to: iOS\n Using:
/Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld\n
Linker option verification failed for bundle
/var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/HelloWorld8zix1rk8/HelloWorld.arm64.xar
(unrecognized arguments: -sectalign DATA llvm_prf_cnts -sectalign DATA
llvm_prf_data)\n\nStderr:\n\n>\n
/Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:373:in
run'\n /Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:2808:in
block in CompileOrStripBitcodeInBundle'\n
/Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:2747:in
each'\n /Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:2747:in
CompileOrStripBitcodeInBundle'\n
/Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:3016:in
block in ProcessIPA'\n /Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:2978:in
each'\n
/Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:2978:in
ProcessIPA'\n /Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:3928:in
'";
info = {
};
level = ERROR;
type = exception;
}
);
extractedWatchIPAInputPath = "/var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/XcodeDistPipeline.~~~UmHmV8/Root";
}
这里有趣的部分是最后的输出:
-= Output =-\n Exited with 0\n \n Command took 0 seconds\n Bitcode bundle version: 1.0\n Setting platform to: iOS\n Using:
/Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld\n
Linker option verification failed for bundle
/var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/HelloWorld8zix1rk8/HelloWorld.arm64.xar
(unrecognized arguments: -sectalign DATA llvm_prf_cnts -sectalign DATA
llvm_prf_data)
看到 llvm_prf_cnts 和 llvm_prf_data,我检查了 this apple guide 并禁用了代码覆盖率以及 GCC_INSTRUMENT_PROGRAM_FLOW_ARCS
我们启用了 Bitcode,同样的设置在 Xcode 11 中有效。
有人可以解释一下为什么会发生这种情况吗?任何线索将不胜感激。谢谢。
终于找到问题了
CLANG_ENABLE_CODE_COVERAGE
被设置为 NO
但 CFLAG -fprofile-instr-generate
仍然被设置。删除 -fprofile-instr-generate
有效:)
我已经为这个错误苦苦挣扎了 2 周,并且我尝试了几乎所有在线可用的解决方案。尝试导出临时 ipa 时,出现以下错误:
{ code = 1061; description = "ipatool failed with an exception: #<CmdSpec::NonZeroExitException: $ /Applications/Xcode_new.app/Contents/Developer/usr/bin/python3 /Applications/Xcode_new.app/Contents/Developer/usr/bin/bitcode-build-tool -v -t /Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin -L /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-out/arm64/Payload/HelloWorld.app/Frameworks/XYZ.framework -L /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-out/arm64/Payload/HelloWorld.app/Frameworks --sdk /Applications/Xcode_new.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk -o /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-out/arm64/Payload/HelloWorld.app/HelloWorld --generate-dsym /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-out/arm64/Payload/HelloWorld.app/HelloWorld.dSYM --strip-swift-symbols /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-in/arm64/Payload/HelloWorld.app/HelloWorld\nStatus: pid 12181 exit 1\nStdout:\n SDK path: /Applications/Xcode_new.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk\n SDK version: 14.0\n PATH: ['/Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin', '/Applications/Xcode_new.app/Contents/Developer/usr/bin']\n Using: /Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lipo\n MachoInfo: cd /\n
['/Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lipo', '-info', '/var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-in/arm64/Payload/HelloWorld.app/HelloWorld']\n -= Output =-\n Non-fat file: /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-in/arm64/Payload/HelloWorld.app/HelloWorld is architecture: arm64\n Exited with 0\n \n Command took 0 seconds\n Using: /Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/dwarfdump\n GetUUID: cd /\n
['/Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/dwarfdump', '-u', '/var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-in/arm64/Payload/HelloWorld.app/HelloWorld']\n -= Output =-\n UUID: E5D8E7AF-7D34-32E1-9337-A84BC4389DFC (arm64) /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-in/arm64/Payload/HelloWorld.app/HelloWorld\n Exited with 0\n \n Command took 0 seconds\n Using: /Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/segedit\n ExtractXAR: cd /\n
['/Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/segedit', '/var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/ipatool20201005-8057-ws4wo9/thinned-in/arm64/Payload/HelloWorld.app/HelloWorld', '-extract', 'LLVM', 'bundle', '/var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/HelloWorld8zix1rk8/HelloWorld.arm64.xar']\n -= Output =-\n Exited with 0\n \n Command took 0 seconds\n Bitcode bundle version: 1.0\n Setting platform to: iOS\n Using: /Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld\n Linker option verification failed for bundle /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/HelloWorld8zix1rk8/HelloWorld.arm64.xar (unrecognized arguments: -sectalign DATA llvm_prf_cnts -sectalign DATA llvm_prf_data)\n\nStderr:\n\n>\n
/Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:373:inrun'\n /Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:2808:in
block in CompileOrStripBitcodeInBundle'\n
/Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:2747:ineach'\n /Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:2747:in
CompileOrStripBitcodeInBundle'\n
/Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:3016:inblock in ProcessIPA'\n /Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:2978:in
each'\n
/Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:2978:inProcessIPA'\n /Applications/Xcode_new.app/Contents/Developer/usr/bin/ipatool:3928:in
'"; info = { }; level = ERROR; type = exception; } ); extractedWatchIPAInputPath = "/var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/XcodeDistPipeline.~~~UmHmV8/Root"; }
这里有趣的部分是最后的输出:
-= Output =-\n Exited with 0\n \n Command took 0 seconds\n Bitcode bundle version: 1.0\n Setting platform to: iOS\n Using: /Applications/Xcode_new.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld\n Linker option verification failed for bundle /var/folders/n7/bmb8rpvx1r7g762vv1bm66lm0000gn/T/HelloWorld8zix1rk8/HelloWorld.arm64.xar (unrecognized arguments: -sectalign DATA llvm_prf_cnts -sectalign DATA llvm_prf_data)
看到 llvm_prf_cnts 和 llvm_prf_data,我检查了 this apple guide 并禁用了代码覆盖率以及 GCC_INSTRUMENT_PROGRAM_FLOW_ARCS
我们启用了 Bitcode,同样的设置在 Xcode 11 中有效。
有人可以解释一下为什么会发生这种情况吗?任何线索将不胜感激。谢谢。
终于找到问题了
CLANG_ENABLE_CODE_COVERAGE
被设置为 NO
但 CFLAG -fprofile-instr-generate
仍然被设置。删除 -fprofile-instr-generate
有效:)