我在这里读到了这个论点:UUID mismatch detected with the loaded library
投票最多的解决方案对我不起作用,因为我确信在我的情况下问题是 Spire 。
当我尝试将我的应用程序[iOS 5.0目标]在Xcode 4.2中运行到我的iPhone 4 [iOS 5.0.1 JB]时,控制台中的输出是:
warning: UUID mismatch detected with the loaded library - on disk is:
/Users/myusername/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/System/Library/Frameworks/CoreLocation.framework/CoreLocation
unable to load symbol file: warning: Unable to read symbols for /Library/MobileSubstrate/MobileSubstrate.dylib (file not found).
warning: No copy of MobileSubstrate.dylib found locally, reading from memory on remote device. This may slow down the debug session.
在安装 Spire 之前,我没有任何Xcode问题。我读过有人已经找到了一个解决方案:https://stackoverflow.com/a/8930742/1203837但是我在处理我将要在此处报告的建议方案时并不那么实际:
如果您安装了Spire并且更新到5.0.1,则需要卸载Spire或更新Spire正在使用的dyld_shared_cache ... Spire dyld缓存位于/ var / spire。您需要从ipsw中提取适合当前固件的缓存。
我真的不会卸载Spire,所以请帮我找出如何“更新Spire正在使用的dyld_shared_cache”。
编辑,感谢 kexik 我已针对此问题测试了完全正常工作的解决方法。
无论您安装Spire的设备是什么,这里都是分步指南(Mac OS):
下载原版iPhone 4S ipsw(link)
将.ipsw重命名至 .zip
提取(通常在Mac OS X中双击)
下载vfdecrypt (link)ed将其解压缩到ipsw的同一个解压缩文件夹中。
打开终端并导航到ipsw extraxted文件夹(提示:输入cd然后直接将文件夹拖放到终端窗口中)
运行命令:
./vfdecrypt -i 038-3763-001.dmg -o decrypted.dmg -k a31ffd506c6711c5a0c52c9f0a2f7208a2f63ad9dd40506e70d80ea20a981eb1312bc774
注意:
-i 038-3763-001.dmg
相对于你可以在提取的ipsw文件夹(称为根文件系统)中找到的所有文件中最大的.dmg
-o decrypted.dmg
相对于输出解密文件的名称,我称之为“decrypted”(扩展名.dmg已修复)
-k a31ffd506c6711c5a0c52c9f0a2f7208a2f63ad9dd40506e70d80ea20a981eb1312bc774
相对于VFDecrypt Key,完全适用于iPhone 4S iOS 5.0.1和038-3763-001.dmg图像。来源是theiPhoneWiki
等待流程终止(您会看到新的提示行)
打开(挂载) decrypted.dmg (双击它),这里是iPhone 4S根文件系统。
导航到文件夹
/System/Library/Caches/com.apple.dyld
对(仅)文件 dyld_shared_cache_armv7 (即在桌面上)进行复制并将其重命名为dyld_shared_cache_armv7.new
将我/ (我使用DiskAid)放入您的iDevice 文件系统
的/ var /尖顶
导航到该路径(我在我的iPhone上直接使用 iFile Cydia App)并在dyld_shared_cache_armv7中重命名原始 dyld_shared_cache_armv7。李明博。 现在重命名dyld_shared_cache_armv7中最近复制的 dyld_shared_cache_armv7.new。检查新的dyld_shared_cache_armv7是否具有与dyld_shared_cache_armv7.bak相同的属性(我必须将execute属性添加到新文件中),而不是删除dyld_shared_cache_armv7.bak(我建议在删除之前备份该文件)如果出现问题)。
保存,退出iFile,从Mac上拔下电源并重新启动设备。
重新打开 XCode 并插入您的设备。可能无法自动检测到。在这种情况下,打开管理器(窗口 - >管理器)并删除当前的iPhone(或iPod touch或iPad)配置文件(我的配置文件中有黄色灯而不是名称旁边的绿色灯),拔掉它,重新启动Xcode,重新打开管理器并等待设备配置文件自动安装过程。
现在您的设备应该完全正常调试您的应用程序!安装了Spire的我的iPhone 4 GSM iOS 5.0.1 JB。
希望本指南能帮助遇到同样问题的人。
再次感谢kexik的建议!
答案 0 :(得分:1)
找到有解密密钥的ipsw。然后uzip那个ipsw并搜索iphone wiki以获取该特定固件 - 在那里你会找到一个密钥以及带有根文件系统的.dmg文件的名称。在解压缩的文件系统中提取dmg(使用vfdecrypt或dmg decryptor)查找/System/Library/Caches/dyld.../dyld_shared_cache并将该文件复制到我提到的设备上的位置。
很抱歉没有给出确切的说明,我是从记忆中写下来的。如果需要,请告诉我,我将逐步准备更准确的内容。 ;)