Requirements
Minimum Requirements
- JDK 21 64-bit - Adoptium Temurin
- Gradle 8.5+ - Download (or use Gradle wrapper)
- Python 3.9-3.13 - For PyGhidra and build scripts
- Ghidra 11.2+ - Release
Platform-Specific Requirements
- Linux/macOS
- Windows
- GCC or Clang compiler
- make build system
- Git version control
Eclipse Setup
Install Eclipse
- Download Eclipse IDE for Java Developers
- Extract and launch Eclipse
- Choose a workspace directory (avoid spaces in path)
Install GhidraDev Plugin
Method 1: Manual Installation (Offline)
Method 1: Manual Installation (Offline)
From Eclipse:
- Help → Install New Software…
- Click Add…
- Click Archive…
- Select
<GhidraInstallDir>/Extensions/Eclipse/GhidraDev/GhidraDev-x.x.x.zip - Click OK (name field can be blank)
- Check Ghidra category
- Click Next → Next
- Accept license agreement
- Click Finish
- Trust unsigned content when prompted
- Click Restart Now
Method 2: Online Installation
Method 2: Online Installation
From Eclipse:
- Help → Install New Software…
- Work with:
https://github.com/NationalSecurityAgency/ghidra-data/raw/main/Eclipse/GhidraDev/latest - Press Enter
- Check Ghidra category
- Click Next → Next
- Accept license agreement
- Click Finish
- Trust unsigned content when prompted
- Click Restart Now
Method 3: Automatic via Ghidra
Method 3: Automatic via Ghidra
Ghidra will automatically install GhidraDev to Eclipse’s
dropins directory when:- You configure Eclipse path in Ghidra settings
- You click the Eclipse icon in Script Manager
- GhidraDev is not already installed
Configure Ghidra Installation
- GhidraDev → Preferences → Ghidra Installations
- Click Add…
- Browse to Ghidra installation directory
- Click OK
Import Ghidra Source (Optional)
For developing Ghidra itself:- File → Import… → General → Existing Projects into Workspace
- Select Ghidra source root directory
- Check Search for nested projects
- Click Finish
VSCode Setup
Install VSCode
- Download Visual Studio Code
- Install the Extension Pack for Java
Configure Ghidra Integration
From Ghidra CodeBrowser:- Tools → Create VSCode Module Project
- Follow the wizard to create a new project
- Open the project in VSCode
Edit Scripts
- Click the VSCode icon in Ghidra’s Script Manager
- VSCode will open with the selected script
- Edit and save (Ghidra will detect changes)
VSCode integration is best for script development. For complex modules with analyzers and plugins, Eclipse with GhidraDev is recommended.
Creating Projects
Ghidra Script Project
- GhidraDev → New → Ghidra Script Project
- Enter project name and location
- Select Ghidra installation
- Choose script directories:
- Home scripts -
~/ghidra_scripts(recommended) - Installation scripts - Ghidra installation directory
- Home scripts -
- (Optional) Enable Python support with PyDev
- (Optional) Create run configuration
- Click Finish
Ghidra Module Project
- GhidraDev → New → Ghidra Module Project
- Enter project name and location
- Select Ghidra installation
- Choose template (optional):
- Analyzer - Auto-analysis component
- Plugin - UI component
- Loader - Binary format support
- Exporter - Output format
- File System - Container format
- (Optional) Enable Python support
- (Optional) Create run configuration
- Click Finish
Import Existing Module
- GhidraDev → Import Ghidra Module Source
- Browse to module source directory
- Select Ghidra installation
- Click Finish
PyDev Setup (Python Support)
Install PyDev
- Download PyDev from official site
- In Eclipse: Help → Install New Software…
- Click Add… → Local…
- Select PyDev directory
- Click OK
- Uncheck “Group items by category”
- Check PyDev for Eclipse
- Click Next → Next
- Accept license
- Click Finish → Restart Now
Configure Python Interpreter
- PyGhidra
- Jython
- Launch PyGhidra at least once
- In Eclipse project creation wizard, click + icon (PyGhidra)
- GhidraDev will auto-detect the interpreter
Launching and Debugging
Run Configurations
GhidraDev provides two run configurations:- Ghidra - Launch GUI
- Ghidra Headless - Batch processing
Create Run Configuration
Method 1: From Project- Right-click project → Run As → Ghidra
- Configuration is created automatically
- Run → Run Configurations…
- Right-click Ghidra → New
- Main tab → Browse to select project
- (Optional) Rename configuration
- Click Apply → Run
Debug Configuration
- Right-click project → Debug As → Ghidra
- Eclipse switches to Debug perspective
- Set breakpoints in your code
- Use standard Eclipse debugging tools
Headless Configuration
For Ghidra Headless runs:- Create run configuration (as above)
- Arguments tab → Program arguments
- Add headless options:
<GhidraInstallDir>/support/analyzeHeadlessREADME.html for complete options.
Environment Variables
Heap Memory
Increase Java heap for large programs:- In run configuration → Arguments tab
- VM arguments:
-Xmx4G(or higher)
Headless Linux CI
For CI/Docker environments:Troubleshooting
Eclipse Compilation Errors
- Collapse all projects in Package Explorer
- Delete projects with ? icons (check “Delete contents on disk”)
- Delete remaining projects (leave contents on disk)
- Run:
gradle prepdev cleanEclipse eclipse buildNatives - Re-import projects
Missing Run Configurations
- Verify
.launchfiles exist in module directories - Close and reopen Eclipse
- Never manually import launch configurations
Extension Not Discovered
If new extensions aren’t detected:- Right-click project → GhidraDev → Link Ghidra…
- Select Ghidra installation
- Click OK
Python Build Errors
If Python support fails:- Ensure Python has
pipinstalled - Consider using a Python virtual environment
- Check system locale:
export LC_MESSAGES=en_US.UTF-8
Next Steps
Plugin Development
Create your first Ghidra plugin
Analyzer Development
Build custom analyzers
