Xcode 4.2: Fout 0xC002 bij het gebruik van een gejailbreakte iPhone 3G voor ontwikkeling

Ik heb deze jailbroken iPhone 3G met iOS-versie 4.2.1 (de nieuwste ondersteunde versie). Wanneer ik het aansluit op Xcode 4.2, begint Xcode met het kopiëren van de foutopsporingssymbolen. Het stopt met kopiëren aan het einde van het proces en geeft de volgende foutmelding:

Xcode has encountered an unexpected error (0xC002)
No such file or directory, at ‘/SourceCache/DTDeviceKit/DTDeviceKit-867/DTDeviceKit/DTDeviceKit_Utilities.m:864’

Heeft iemand iets soortgelijks meegemaakt?

Ik weet dat ik de telefoon moet proberen te herstellen, maar ik vraag het voor het geval iemand een oplossing kan bedenken waarbij het niet nodig is om het te herstellen.

In dit bericht op mactechnews.de , een man meldt hetzelfde probleem - zonder oplossing tot nu toe.

13
Als u geïnteresseerd bent in deze vraag, waarom ondersteunt u het Area 51-voorstel voor een gevangenisbreker niet Stack Exchange-site
toegevoegd de auteur rjstelling, de bron
ik heb ook hetzelfde probleem. :( ik voer test-builds uit via testflightapp.com op dat apparaat, maar het staat me nog steeds niet toe om de app te debuggen.
toegevoegd de auteur Evgen Bodunov, de bron
Ik denk dat dit probleem zich zeker voordoet en daarom is het een poging om de ondertekening van nepcodes op Xcode 4.2 af te schrikken
toegevoegd de auteur lol, de bron

5 antwoord

Oké, na veel testen en opgraven van het bestandssysteem ... heb ik het opgelost. Het blijkt dat er slechts een paar bestanden zijn die niet van het apparaat worden gedownload (om nog onbekende redenen). Ze zijn gerelateerd aan de dyld cache (weet niet echt wat dit is en waar het voor is). Hier zijn de stappen om uw 4.2.1-apparaat foutopspoorbaar te maken in XCode 4.2 en 4.3.x:

  1. Close Xcode
  2. Go to: ~/Library/Developer/Xcode/iOS DeviceSupport/4.2.1 (8C148)/Symbols/System/Library/Caches/com.apple.dyld/
    Note: if you don't have this folder, run Xcode, connect your device, and wait until the error 0xC002 appears in Organizer - the folder should be created by that time.
  3. Create 3 empty files there called:
    • .copied_dyld_shared_cache_armv6
    • .processed_dyld_shared_cache_armv6
    • dyld_shared_cache_armv6
  4. Run Xcode and enjoy the light next to your device eventually go green:)

Of, voor de terminale liefhebbers:

cd ~/Library/Developer/Xcode/iOS\ DeviceSupport/4.2.1\ \(8C148\)/Symbols/System/Library/Caches/com.apple.dyld/
touch .copied_dyld_shared_cache_armv6
touch .processed_dyld_shared_cache_armv6
touch dyld_shared_cache_armv6


This is obviously a hack but it works perfectly for debugging and I haven't noticed any side-effects so far.
Enjoy!

Small update:
I tested it on my snow leopard hackintosh, with the Xcode 4.2 (most recent to date) and although the device is active in the organizer and it is possible to run the app on the device, i get black screen on launch. It gets installed but apparently debugger cannot get attached. I had the same problem with 4.0.2, when the 0xC002 problem didn't yet occur so I think it's unrelated and might even not happen to others. Nevertheless, 0xC002 is still solved.
On my main development machine with Lion and Xcode 4.3.2, device is perfectly debuggable.

27
toegevoegd
Heel erg bedankt, het werkt echt. :)
toegevoegd de auteur Raj, de bron
@BartekEborn bedankt voor uw oplossing. Maar ik gebruik Xcode 5.0 (5A1413) en iPhone 3GS met iOS-versie 6.0.1 (10A523). En verscheen een dergelijke fout in de Organisator. Kunt u een oplossing bieden voor deze situatie? Of is het hetzelfde voor alle soorten iPhone en Xcode? bedankt.
toegevoegd de auteur Shamsiddin, de bron
Oh, Bro, ik heb mijn probleem opgelost :). Door een andere niet gejailbreakte iPhone aan te sluiten. Toen ik de tweede verbond. Er zijn enkele mappen aangemaakt in ~/Bibliotheek/Ontwikkelaar/Xcode/iOS DeviceSupport/6.0.1 (10A523)/Symbolen/Systeem/Bibliotheek/en één bestand (dyld_shared_cache_armv7) in ~/Bibliotheek/Developer/Xcode/iOS DeviceSupport/6.0.1 (10A523) /Symbols/System/Library/Caches/com.apple.dyld/. Toen heb ik mijn problematische iPhone verbonden en het werkte :)
toegevoegd de auteur Shamsiddin, de bron
Werkte voor mij met behulp van xcode 4.4.1 met een iPhone 3G met iOS 4.2.1
toegevoegd de auteur Max Ballo, de bron
Werkte op mijn iPhone 3G. Bedankt!
toegevoegd de auteur Yuvi, de bron
Ik kan het nu niet testen (mijn 3G is thuis); maar ik markeer dit als het juiste antwoord voor nu. Bedankt!
toegevoegd de auteur Ricardo Sanchez-Saez, de bron
Werkte voor XCode 4.6 (4H127) met een iPod Touch 4G met iOS 6.0. Bedankt!
toegevoegd de auteur Peter Metz, de bron
Bedankt, ik zou heel graag van je horen zodra je het test, omdat dit mijn eerste Stackoverflow-reactie is en ik zou willen dat het op zijn minst correct was :)
toegevoegd de auteur Bartek Eborn, de bron
@ShamsiddinSaidov Heb je jezelf eerst geprobeerd? Ik heb noch 3GS noch XCode of zelfs een Mac in de buurt. Zoals je ziet, testten mensen in reacties het met verschillende Xcode/iOS/iPhone-combinaties en meestal werkte het. Ik volg geen recente wijzigingen, maar ik denk dat Apple ondersteuning voor 6.0.1 in XCode 5.0 mogelijk heeft laten vallen, dus analoog zou ik in stap 2 proberen: ~/Bibliotheek/Developer/Xcode/iOS DeviceSupport/6.0.1 ( 10A523) /Symbols/System/Library/Caches/com.apple.dyld/ en doorgaan met de andere stappen, uiteraard bestanden maken met armv7 aan het einde in plaats van armv6 in stap 3.
toegevoegd de auteur Bartek Eborn, de bron

Het bovenstaande antwoord ( https://stackoverflow.com/a/9944892/1390251 ) werkt in principe maar voor nieuwere versies van Xcode moet je waarschijnlijk de bestanden als volgt hernoemen, ze eindigen met '7' in plaats van '6':

touch .copied_dyld_shared_cache_armv7
touch .processed_dyld_shared_cache_armv7
touch dyld_shared_cache_armv7

Als u het niet zeker weet, kunt u beide sets bestanden bewaren (... 6 en ... 7) in de betreffende map (kan trouwens ook 5.1.1 zijn) en het zou moeten werken. (heb het getest op iPhone 4 met iOS v5.1.1 echt)

7
toegevoegd
Werkte voor mijn iPhone 3G, iOS 4.2.1, op Xcode 4.3.1.
toegevoegd de auteur Neeku, de bron
werkte voor iOS 5.1.1
toegevoegd de auteur Hanuman, de bron

Het lijkt erop dat je apps niet kunt debuggen op iOS 4.2.1. Ik probeerde verschillende herstelt naar iOS 4.2.1 met hetzelfde effect. Downgraden naar iOS 4.0 was het enige dat werkte.

De reden voor het hele probleem is dat iOS 4.2.1 niet wordt ondersteund in XCode, volgens deze website .

1
toegevoegd

Error in Xcode getting debugging info from 5.0.1 iphone solved, see the link to archive with iOS5.0.1 debug info download & unpack to "~/Library/Developer/xCode/iOS DeviceSupport/" & be happy =)

1
toegevoegd
Dit klinkt veelbelovend, maar ons probleem is met iOS 4.2.1 op een gejailbreakte iPhone 3G. Zal wat testen uitvoeren als/wanneer ik tijd heb.
toegevoegd de auteur Ricardo Sanchez-Saez, de bron

Ik heb deze bug opgelost! [Voer hier de beschrijving hier in] [1] op deze manier:

Ik dupliceer de 5.1.1 (9B206), hernoem het naar 5.1.1 (9A405) [mijn ios-apparaat is deze versie], dan is de fout verdwenen.

0
toegevoegd