Jailbroken iPhone 3G with iOS 4.2.1 Cannot Be Debugged with Xcode

I am trying to debug my applications using Xcode 3.2.5 and jailbroken iPhone 3G with iOS 4.2.1.

When I run debugging with breakpoints turned on, the application cannot start (it starts on the "Default.png" screen) and I get Data Formatters temporarily unavailable, try again after continuing. "(Unable to find dlopen function, therefore it is not possible to load shared libraries .) Post to GDB.

When I run debugging without breakpoints enabled, the application starts without problems.

I tried to take the steps described there , but without any results.

When I used iOS 4.1, there was a problem with reboots .

Each iPhone Organizer connection displays this message:

**Unknown iOS detected** Xcode does not have debugging information for the version of iOS on the device named "iPhone". Xcode can collect debugging data from the device to enable development with this version of iOS. This process only needs to be done once per iOS version, and will take several minutes.

Thanks for any help!

+3
source share
6 answers

Jailbroken 3GS / 4.2.1

I tried Matthew Frederick's recommendation without success. Has anyone managed to find a solution to this problem?


EDIT

Please note that I used jailbroken 3GS and non-jailbroken 3GS . A workaround requires a non-jailbroken iPhone 3GS with 4.2.1 (8C148a) :

  • Delete /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148a)
  • Connect an unencrypted iPhone 3GS with 4.2.1 (8C148a)
  • Open Xcode and Organizer
  • Set up your new iPhone for development by clicking the "Use for Development" button in the organizer.
  • Let him extract debugging symbols from it, recreating /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148a)
  • Disconnect it, remove from Organizer

At this point, you can debug your hacked iPhone again. Hooray!

+2
source

Probably your problem can be solved by re-authorizing your device:

  • If your iPhone is connected to a computer, disconnect it

  • In Xcode, display Organizer (Window-> Organizer)

  • In the Devices area, click on your device and delete it .

  • Just in case, close Xcode and then run .

  • Open Organizer again, then connect your iPhone to your computer.

  • Tell Xcode that yes, you want to authorize the device .

  • If everything works correctly, Xcode now downloads device information for 4.2.1.

If this does not work, I suggest that you follow the steps again, but replace Step 4 by removing all Xcode traces from your computer and then reinstalling it. This includes the entire developer folder.

+8
source

The latest snapshot of the Xcode + SDK is unaware of iOS 4.2.1, as it was published before the last patch. Xcode Organizer has a new feature that attempts to download debugging support files directly from the device, but there are apparently some (possibly jailbreak) issues for some people.

iOS 4.2.1 is pretty similar to 4.2 that Xcode can force the use of 4.2 support files for debugging on 4.2.1 devices. To do this, just go to the /Developer/Platforms/iPhoneOS.platform/DeviceSupport folder and copy the Symbols subfolder and / or DeveloperDiskImage.* Files from 4.2 (8C134) to 4.2.1 (8C148) (or any release folder created for your devices).

+5
source

To get rid of (Re) collecting debugging symbols in Organizer (which actually does nothing) every time the iPhone is presented with Xcode, a simple workaround is to copy:

DeveloperDiskImage.dmg and DeveloperDiskImage.dmg.signature

from 4.2 (8C134) to an empty folder 4.2.1 (8C148).

Xcode recognizes the device, and you can debug your code, but without debugging symbols for the IOS infrastructure. But the gdb console will be alive, and you can use it to debug your code (with debugging symbols).

Btw. you can always use Simulator for full iOS support :-)

+1
source

My completely non-Jailbroken iPhone does this with 4.2.1 and receives exactly the same messages and problems. This is new functionality in the latest version of Xcode, so it may be a bug.

0
source

An additional suggestion, besides the Fnord offer, is to enable multitasking or "Repeatability" in PwnageTool for iPhone with iPhone 3G support.

I am not sure if this has an effect. But, it’s wise to do this if we really want to test it in the real world of iPhone 3G.

0
source

Source: https://habr.com/ru/post/1388144/


All Articles