Set up Ghidra for REA
Unofficial guide. This site is an independent community guide and is not affiliated with the REA project. For authoritative docs see the official REA website and the morluto/rea GitHub repository. Commands here are taken from the official README/docs (checked 2026-10-13); REA changes quickly, so verify against the official docs.
Ghidra is the free way to give REA deep native-binary analysis. REA connects to an existing install; it never installs Ghidra or Java.
Requirements
- Ghidra 12.1.x (bridge verified with 12.1.4)
- A 64-bit full JDK in Ghidra's declared range — JDK 21+ for current 12.1
- The native decompiler for your platform under
Ghidra/Features/Decompiler/os/<platform>/(Linux ARM64 may need to build it separately) - Linux x64/arm64, macOS x64/arm64, or experimental Windows x64
Configure (Linux / macOS)
export GHIDRA_INSTALL_DIR=/absolute/path/to/ghidra_12.1.4_PUBLIC
export JAVA_HOME=/absolute/path/to/jdk-21 # optional if java/javac are on PATH
rea doctor --json
rea setupWindows: see Install REA on Windows.
Check and use
rea doctor --provider ghidra --json
rea analyze /absolute/path/to/program --provider ghidra --json
rea decompile /absolute/path/to/program 0x1000 --provider ghidra --json
Memory
REA uses GHIDRA_HEADLESS_MAXMEM, then GHIDRA_MAXMEM, else 2G as the JVM heap. For small targets on a small machine: export GHIDRA_HEADLESS_MAXMEM=512M. Your MCP client must pass this to the REA server process.
"native_decompiler missing" on macOS
If rea doctor --json reports native_decompiler missing on macOS x64, the docs note the extracted archive may contain decompiler source without the built binary for your platform.
Wrong CPU / compiler detected
export REA_GHIDRA_LANGUAGE_ID="x86:LE:32:default"
export REA_GHIDRA_COMPILER_SPEC_ID="borlandcpp" # optional; requires a languageRelated guides
Sources: installation.md#ghidra · ghidra-provider.md
FAQ
Which Ghidra version does REA support?
Ghidra 12.1.x, verified with 12.1.4 and JDK 21.
Do I need PyGhidra?
No. REA uses a packaged Java HeadlessScript; Python and PyGhidra are not prerequisites.