Mac签名错误的解决方案

2023-10-28 08:52:24
标签: codesign unknown_0x32 invalid -size

在运行Mac程序时,在Xcode中运行,签名不被检查,直接双击会报错。

open ~/Library/Logs/DiagnosticReports/ 可以找到过去的错误日志。

大概率得到下面这串,在当时直接弹出的Report中有一样的内容。

发现其中最有用的是 ---> mapped file 102d14000-102e18000 [ 1040K] r--/rwx SM=COW ...t_id=5e1b0559

这行中的1040K

在目录中用

find . -size +1040k -size -1050k

或者

find . -size +1M -size -2M

来找对应大小的二进制文件

在列表中通常就能找出原因了。

chencon@ADSKDQJQR0H4DT Release % find . -size +85M -size -86M

./Frameworks/MeshMixer/libmmsdk.dylib

-------------------------------------

Translated Report (Full Report Below)

-------------------------------------

Process: Autodesk Fusion 360 [74251]

Path: /Users/USER/*/Autodesk Fusion 360.app/Contents/MacOS/Autodesk Fusion 360

Identifier: com.autodesk.fusion360

Version: 1.48.5 (1.48.5)

Code Type: ARM-64 (Native)

Parent Process: NTest [74114]

Responsible: Terminal [771]

User ID: 502

Date/Time: 2023-10-27 10:05:02.6372 +0800

OS Version: macOS 13.5.1 (22G90)

Report Version: 12

Anonymous UUID: 0D5F412A-EAA8-9A0E-E6AF-57FCD86FA599

Sleep/Wake UUID: 378494A2-0204-4558-B2DE-2ADC8E6880B3

Time Awake Since Boot: 180000 seconds

Time Since Wake: 9071 seconds

System Integrity Protection: enabled

Crashed Thread: 0

Exception Type: EXC_BAD_ACCESS (SIGKILL (Code Signature Invalid))

Exception Codes: UNKNOWN_0x32 at 0x0000000102d98000

Exception Codes: 0x0000000000000032, 0x0000000102d98000

Termination Reason: Namespace CODESIGNING, Code 2 Invalid Page

VM Region Info: 0x102d98000 is in 0x102d14000-0x102e18000; bytes after start: 540672 bytes before end: 524287

REGION TYPE START - END [ VSIZE] PRT/MAX SHRMOD REGION DETAIL

VM_ALLOCATE 102d10000-102d14000 [ 16K] rw-/rwx SM=PRV

---> mapped file 102d14000-102e18000 [ 1040K] r--/rwx SM=COW ...t_id=5e1b0559

GAP OF 0x6648c000 BYTES

Stack Guard 1692a4000-16caa8000 [ 56.0M] ---/rwx SM=NUL

Thread 0 Crashed:

0 dyld 0x1a4dc2e40 dyld3::MachOFile::isMachO(Diagnostics&, unsigned long long) const + 40

1 dyld 0x1a4dc2d1c dyld3::FatFile::isValidSlice(Diagnostics&, unsigned long long, unsigned int, unsigned int, unsigned int, unsigned long long, unsigned long long) const + 80

2 dyld 0x1a4dc303c dyld3::FatFile::forEachSlice(Diagnostics&, unsigned long long, bool, void (unsigned int, unsigned int, void const*, unsigned long long, bool&) block_pointer) const + 332

3 dyld 0x1a4d9aed4 dyld4::SyscallDelegate::mapFileReadOnly(Diagnostics&, char const*, unsigned long*, dyld4::FileID*, bool*, char*) const + 704

4 dyld 0x1a4d9a660 dyld4::SyscallDelegate::withReadOnlyMappedFile(Diagnostics&, char const*, bool, void (void const*, unsigned long, bool, dyld4::FileID const&, char const*) block_pointer) const + 88

5 dyld 0x1a4d93694 dyld4::JustInTimeLoader::makeJustInTimeLoaderDisk(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, bool, unsigned int, mach_o::Layout const*) + 208

6 dyld 0x1a4d8a40c invocation function for block in dyld4::Loader::getLoader(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&) + 1680

7 dyld 0x1a4d8aa30 invocation function for block in dyld4::Loader::forEachResolvedAtPathVar(dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, dyld4::ProcessConfig::PathOverrides::Type, bool&, void (char const*, dyld4::ProcessConfig::PathOverrides::Type, bool&) block_pointer) + 436

8 dyld 0x1a4d702d8 dyld3::MachOFile::forEachLoadCommand(Diagnostics&, void (load_command const*, bool&) block_pointer) const + 296

9 dyld 0x1a4dc65c8 dyld3::MachOFile::forEachRPath(void (char const*, bool&) block_pointer) const + 128

10 dyld 0x1a4d89710 dyld4::Loader::forEachResolvedAtPathVar(dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, dyld4::ProcessConfig::PathOverrides::Type, bool&, void (char const*, dyld4::ProcessConfig::PathOverrides::Type, bool&) block_pointer) + 708

11 dyld 0x1a4d76f54 dyld4::ProcessConfig::PathOverrides::forEachPathVariant(char const*, dyld3::Platform, bool, bool, bool&, void (char const*, dyld4::ProcessConfig::PathOverrides::Type, bool&) block_pointer) const + 488

12 dyld 0x1a4d8928c dyld4::Loader::forEachPath(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, void (char const*, dyld4::ProcessConfig::PathOverrides::Type, bool&) block_pointer) + 248

13 dyld 0x1a4d899e0 dyld4::Loader::getLoader(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&) + 588

14 dyld 0x1a4d91730 invocation function for block in dyld4::JustInTimeLoader::loadDependents(Diagnostics&, dyld4::RuntimeState&, dyld4::Loader::LoadOptions const&) + 412

15 dyld 0x1a4dc47e8 invocation function for block in dyld3::MachOFile::forEachDependentDylib(void (char const*, bool, bool, bool, unsigned int, unsigned int, bool&) block_pointer) const + 148

16 dyld 0x1a4d702d8 dyld3::MachOFile::forEachLoadCommand(Diagnostics&, void (load_command const*, bool&) block_pointer) const + 296

17 dyld 0x1a4dc4630 dyld3::MachOFile::forEachDependentDylib(void (char const*, bool, bool, bool, unsigned int, unsigned int, bool&) block_pointer) const + 172

18 dyld 0x1a4d91478 dyld4::JustInTimeLoader::loadDependents(Diagnostics&, dyld4::RuntimeState&, dyld4::Loader::LoadOptions const&) + 164

19 dyld 0x1a4d74a0c dyld4::prepare(dyld4::APIs&, dyld3::MachOAnalyzer const*) + 1236

20 dyld 0x1a4d73e18 start + 1964


阅读(0) 收藏(0) 转载(0) 举报/Report
相关阅读

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有