Dump Public and Private iOS Frameworks

So the other night I got annoyed at updating a script I made to dump iOS frameworks, and so I decided to re-write it. The result is a script which I am confident is good enough to share with the world.

I’m releasing it under the GNU General Public License Version 3.

These scripts dump all of the iOS frameworks (both public and private) and then patch the #import commands.
The headers are then merged with the existing iOS headers in your SDK, without overwriting any Apple headers.

Instructions for use are below, though these are also included in the zip.

You can download it here.


You will need to download class-dump from here and then copy just the executable to “/usr/bin/” on your Mac.

You will also need to download subtrate.h from here and place it in the same folder as the scripts.

You will need to copy libsubstrate.dylib from “/usr/lib/libsubstrate.dylib” on a jailbroken iOS device with MobileSubstrate installed to the same folder as the scripts and substrate.h on your Mac.


cd to the directory with the scripts and substrate.h in:

Burgch$ cd ~/Desktop/DumpFrameworks

The script takes one argument; the SDK directory for the SDK you would like to dump.

Run the script:

Burgch$ ./DumpFrameworks.sh /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk

When prompted, enter your super user password (this is required to copy the header files back to the SDK (you can check the script if you don’t believe me :P)

That’s it, you’re done, all header files for the SDK have been dumped, patched, and merged. You should receive a successful completion message to confirm. Wasn’t that easy? :P

3 thoughts on “Dump Public and Private iOS Frameworks

Leave a Reply

Your email address will not be published. Required fields are marked *