Ghidra
Extra Install Steps
You must install using pip3 install binsync[ghidra]
for the extra dependencies. After doing this, continue with installation via Script.
- Install extra dependencies using
pip3 install binsync[ghidra]
- Continue with installation via Script
- From the main window, go to Edit -> Plugin Path and make sure the plugin path created by BinSync is included
- From CodeBrowser, go to Window -> Script Manager -> find
binsync_plugin.py
and tick the "In Tool" box in its line - Start BinSync in CodeBrowser via Tools -> BinSync -> Start UI
Extra Info
BinSync is written in Python 3, however, Ghidra only has a Python 2 backend.
To deal with this, we use a vendored version of ghidra_bridge.
We copy a BinSync stub, along with Ghidra Bridge code, into the ghidra_scripts
folder, which is Python 2.
Inside Ghidra, when you start BinSync, we use the Python 2 side to start the Python 3 GUI in another thread.
We use Ghidra Bridge to make change requests to the Ghidra UI.
Support Progress
Operations | Function Headers | Stack Vars | Global Vars | Structs | Enums | Comments |
---|---|---|---|---|---|---|
Symbols | ✔️ | ✔️ | ✔️ | ✔️ | ❌ | ✔️ |
Types | ✔️ | ✔️ | ✔️ | ✔️ | ❌ | ✔️ |
Pull | ✔️ | ✔️ | ✔️ | ❌ | ❌ | ✔️ |
Push | ✔️ | ✔️ | ✔️ | ✔️ | ❌ | ❌ |
Auto Push | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |