-
Notifications
You must be signed in to change notification settings - Fork 195
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for importing dSYMs #3643
Comments
If a dSYM is just the Mac name for a .dwo, then this is very likely a trivial issue once #3206 is accomplished. We've got baked in support for separate DWARF files, it's (hopefully) just a matter of replicating #2099 for MachO's. If you also want support to automatically resolving those UUIDs and loading the separate debug info at load time, we might want to make a separate issue for that once we can actually load them. |
Yeah, it’s just a Mach-O with DWARF data in it instead of code. |
Preliminary support for this is provided in builds >3.5.4413-dev. Please report any issues you find with it! (Just as a heads up, you'll need to open the actual dSYM file, which means you might need to dig into application package contents to find it) |
Reopening while we await further documentation and unit tests. |
This seems to have crashed Binary Ninja: Crash log
|
@saagarjha Are you able to provide the file that generates that crash log? It'll be a lot easier to ensure I've fixed it if I have the actual sample. |
Absolutely, here's the file I was analyzing and the symbols for it: |
Happy to report no crash in 3.5.4495-dev. Make sure you provide the whole dSYM path to the external file setting when you try to import the debug info (eg. ~/Downloads/iSH/iSH.app.dSYM/Contents/Resources/DWARF/iSH). |
Well it doesn't crash anymore, so that's good. However, I don't actually see any changes after importing the symbols… |
Make sure you're getting the actual dSYM file out of the dSYM package: You can read more about that in the docs. |
Yep, I tried doing that. For some reason it's not doing anything for me if I pick that file when I open with options. If I try to import it later from the Analysis menu I get a log message that says "[Default] File does not contain debug info". |
What is the feature you'd like to have?
On macOS the preferred way to package symbols for distribution is DWARF stored in a dSYM format. It would be nice if Binary Ninja was able to read this file.
Is your feature request related to a problem?
I guess the problem is I can't load these from Analyze → Import Debug Info.
Are any alternative solutions acceptable?
I guess any way of reading these will do, but ideally you just pull them from Spotlight or whatever
Additional Information:
Possibly useful: https://lldb.llvm.org/use/symbols.html
The text was updated successfully, but these errors were encountered: