[英]Error with Symbolicatecrash in Xcode 9
我一直在嘗試在Xcode 9中使用symobolicatecrash來象征用戶提供的OS X崩潰日志。 根據我的研究,它的用法似乎很簡單。 但是,我無法克服此錯誤:
Unsupported crash log version: 12 at .../symbolicatecrash line 619
當我檢查日志文件時,發現它確實是Report Version12。當我在Xcode中打開symbolicatecrash時,我發現了有問題的代碼:
if(! $is_spindump_report) {
if($report_version == 102 || $report_version == 103) { # Leopard GM
$pat = '
^\s* (\w+) \s* \- \s* (\w+) \s* (?# the range base and extent [1,2] )
(\+)? (?# the application may have a + in front of the name [3] )
(.+) (?# bundle name [4] )
\s+ .+ \(.+\) \s* (?# the versions--generally "??? [???]" )
\<?([[:xdigit:]]{32})?\>? (?# possible UUID [5] )
\s* (\/.*)\s*$ (?# first fwdslash to end we hope is path [6] )
';
%captures = ( 'base' => \$1, 'extent' => \$2, 'plus' => \$3,
'bundlename' => \$4, 'uuid' => \$5, 'path' => \$6);
}
elsif($report_version == 104 || $report_version == 105) { # Kirkwood
# 0x182155000 - 0x1824c6fff CoreFoundation arm64 <f0d21c6db8d83cf3a0c4712fd6e69a8e> /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation
$pat = '
^\s* (\w+) \s* \- \s* (\w+) \s* (?# the range base and extent [1,2] )
(\+)? (?# the application may have a + in front of the name [3] )
(.+) (?# bundle name [4] )
\s+ ('.$architectures.') \s+ (?# the image arch [5] )
\<?([[:xdigit:]]{32})?\>? (?# possible UUID [6] )
\s* (\/.*)\s*$ (?# first fwdslash to end we hope is path [7] )
';
%captures = ( 'base' => \$1, 'extent' => \$2, 'plus' => \$3,
'bundlename' => \$4, 'arch' => \$5, 'uuid' => \$6,
'path' => \$7);
}
else {
die "Unsupported crash log version: $report_version";
}
}
據我所知,OS X崩潰日志當前是版本12,而較舊的報告是版本11、10、9 ...我不是PERL專家,但是似乎使用此代碼,symbolicatecrash將永遠無法工作。 它似乎正在尋找報告版本102、103、104或105。我發現了許多說明如何使用symbolicatecrash的手冊/指南,因此它似乎對某些人有用。
任何人都可以幫助找出正在發生的事情。 我注意到該代碼的版權為2008-2015,所以也許這是一個舊版本,但是我在Xcode 9.4.1中找到了它。 還是symbolicatecrash僅適用於iOS崩潰日志?
看起來iOS Simulator不支持使用此腳本進行符號化。 如果您查看從設備獲得的崩潰日志,則版本為105
OS Version: iOS 13.0 (17A5522g)
Report Version: 105
映射到perl腳本:
elsif($report_version == 104 || $report_version == 105) { # Kirkwood
與iOS模擬器上的報告版本相同
OS Version: Mac OS X 10.14.4 (18E226)
Report Version: 12
這令人沮喪,因為在沒有連接調試器的單元測試和ui測試期間會發生崩潰日志。 所以iOS模擬器的象征會很好
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.