简体   繁体   中英

UUID mismatch detected with the loaded library AFTER INSTALLING SPIRE when trying to run an App from XCode [iOS 5.0.1]

I've read about this argument here: UUID mismatch detected with the loaded library

The most voted solution didn't work for me, because I'm sure in my case the problem is Spire .

When I try to run my App [iOS 5.0 targeted] in Xcode 4.2 onto my iPhone 4 [iOS 5.0.1 JB] the output in the console is:

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.

Before installing Spire I didn't have any Xcode problem. I've read that somebody already found a solution: https://stackoverflow.com/a/8930742/1203837 but I'm not so practical in approaching the proposed one that I'm going to report also here:

If you have Spire installed and you updated to 5.0.1 you need to uninstall Spire or update dyld_shared_cache which Spire is using...Spire dyld cache is at /var/spire. You need to extract cache appropriate to your current firmware from ipsw.

I really would NOT uninstall Spire, so please help me to find out how to "update dyld_shared_cache which Spire is using" .


EDIT: thanks to kexik I've tested a fully working workaround for the problem.

Whatever device you have installed Spire in, here is the step-by-step guide (Mac OS) :

  • download the original iPhone 4S ipsw ( link )

  • rename it from .ipsw to .zip

  • extract it (normally, by double-clicking it in Mac OS X)

  • download vfdecrypt ( link ) ed unzip it into the same extracted folder of the ipsw.

  • Open Terminal and navigate into the ipsw extraxted folder (tip: type cd then drag-and-drop directly the folder into the Terminal window)

  • Run the command :

./vfdecrypt -i 038-3763-001.dmg -o decrypted.dmg -k a31ffd506c6711c5a0c52c9f0a2f7208a2f63ad9dd40506e70d80ea20a981eb1312bc774

NOTE:

-i 038-3763-001.dmg

Is relative to the biggest .dmg in all the ones you can find into the extracted ipsw folder (referred to the Root File System)

-o decrypted.dmg

Is relative to the name of the output decrypted file, I called "decrypted" (the extension .dmg is fixed)

-k a31ffd506c6711c5a0c52c9f0a2f7208a2f63ad9dd40506e70d80ea20a981eb1312bc774

Is relative to the VFDecrypt Key exactly for iPhone 4S iOS 5.0.1 and 038-3763-001.dmg image. Source is theiPhoneWiki

  • Wait until the process terminates (You'll see a new prompt line) 完成vfdecrypt程序

  • Open ( mount ) decrypted.dmg (double-click it) and here it is the iPhone 4S root file system.

  • Navigate into the folder

/System/Library/Caches/com.apple.dyld

  • Make a copy of the (only) file dyld_shared_cache_armv7 (ie on your desktop) and rename it to dyld_shared_cache_armv7.new

  • Copy it (I used DiskAid) into your iDevice file system at the path

/var/spire

  • Navigate into that path (I used iFile Cydia App directly on my iPhone) and rename the original dyld_shared_cache_armv7 in dyld_shared_cache_armv7.bak. Rename now the recently copied dyld_shared_cache_armv7.new in dyld_shared_cache_armv7. Check that the new dyld_shared_cache_armv7 has the same properties than the dyld_shared_cache_armv7.bak (I had to add the execute property to the new file), than delete dyld_shared_cache_armv7.bak (I suggest also to backup that file before deleting it in case of problems).

  • Save, exit iFile, unplug from your Mac and reboot your device .

  • Reopen XCode and plug your device in. It probably won't be automatically detected. In this case open the Organizer (Window -> Organizer) and delete the current iPhone (or iPod touch, or iPad) profile (mine one had the the yellow light instead of the green one near the name), unplug it, reboot Xcode, reopen Organizer and wait your device profile auto installation process.

NOW your device should be fully working debugging your Apps! My iPhone 4 GSM iOS 5.0.1 JB with Spire installed does.

Hope this guide will help whoever have the same problem.

Thanks again kexik for his suggestions!

Find an ipsw for which there is the decryption key. Then uzip that ipsw and search iphone wiki for that particular firmware - there you will find a key as well as the name of .dmg file with root filesystem. Extract that dmg (using vfdecrypt or dmg decryptor) in extracted filesystem look for /System/Library/Caches/dyld.../dyld_shared_cache and copy that file to the place on the device I mentioned.

Sorry for not giving exact instructions, I wrote it from my memory. If needed, let me know and I will prepare more exact step-by-step. ;)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM