Build Issues
Gradle Cannot Find Native Toolchains (Linux)
Problem: Gradle fails to discover native toolchains when using a non-English system locale. Solution: Set the following environment variable before running Gradle tasks:Python Build Issues - No pip Access
Problem: The Ghidra build only finds Python versions that don’t have access topip.
Solution: Perform the build from a Python virtual environment:
Unexpected Compilation Errors After git pull
Problem: After pulling the latest changes, you get compilation errors that don’t make sense. Solution: Clean the build and regenerate project files:Dependencies Not Downloading
Problem: Gradle fails to download dependencies. Solution: Ensure you’re running the dependency fetch before other tasks:~/.gradle/gradle.properties:
Eclipse Issues
Eclipse Compilation Errors After Sync
Problem: After pulling or syncing with the latest Ghidra source repository, Eclipse shows compilation errors. Solution: Reset Eclipse projects:Collapse All Projects
In the Package Explorer or Project Explorer, click the collapse icon (⊟) to collapse all projects.
Delete Orphaned Projects
- Locate projects with
?icons (no longer in source control) - Right-click on them and select Delete
- CHECK “Delete project contents on disk”
- Click OK
- Verify git shows no unstaged deletions
Remove All Projects from Eclipse
- Select all projects in the Package Explorer
- Right-click and select Delete
- Leave UNCHECKED “Delete project contents on disk”
- Click OK
Missing Ghidra Run Configurations
Problem: The Ghidra run configurations (launchers) are missing from Eclipse. Solution: Run configurations are stored in various modules’.launch/ directories (e.g., Ghidra/Features/Base/.launch/).
- Ensure the corresponding module project is imported (e.g., “Features Base”)
- Check Run → Run Configurations… for the configurations
- If missing, try closing and reopening Eclipse
- Sometimes you need to launch Ghidra once via Run → Run Configurations… for it to appear in the favorites menu
Run configurations should automatically appear when their parent projects are imported. If they don’t, this indicates an import issue.
GhidraDev Plugin Compilation Errors (PyDev/CDT)
Problem: Getting compilation errors related to PyDev and CDT when developing the GhidraDev plugin. Solution: Activate the correct target platform:- Go to Eclipse preferences
- Navigate to Plug-in Development → Target Platform
- Activate
/Eclipse GhidraDevPlugin/GhidraDev.target - Click Apply and Close
Runtime Issues
Ghidra Won’t Start - Java Version Error
Problem: Ghidra fails to start with a Java version error. Solution:-
Verify you have JDK 21 64-bit installed:
-
If you have multiple Java versions, set
JAVA_HOME: -
Or modify
support/launch.propertiesto specify the Java installation:
Ghidra Runs Out of Memory
Problem: Ghidra crashes or slows down with large binaries. Solution: Increase heap size insupport/launch.properties:
PyGhidra Import Errors
Problem: PyGhidra fails to import or can’t find Ghidra modules. Solution:-
Ensure you’re using the bundled PyGhidra launcher:
-
If installing as a package, ensure it’s installed correctly:
-
Verify Python version (3.9-3.13 required):
Multi-User / Server Issues
Certificate Errors with Ghidra Server (JDK 21.0.10+)
Problem: Cannot connect to Ghidra Server due to hostname verification failures after upgrading to JDK 21.0.10 or later. Solution: Server-side (Recommended): Upgrade the Ghidra Server to version 12.0.3 or later, which includes updated certificate generation with proper subject alternative names. Client-side (Workaround): Add this line tosupport/launch.properties:
Merge Conflicts with Non-Packed Structures
Problem: Multi-user merge issues related to non-packed structures affect merge results. Solution: This is a known issue fixed in Ghidra 12.0.3+. Update to the latest version.Debugger Issues
Debugger Deadlock When Saving Traces
Problem: Deadlock occurs when saving Traces from the Close Project dialog. Solution: This is a known issue fixed in Ghidra 12.0.4+. Update to the latest version. Workaround: Save traces manually before closing the project.GDB Connection Issues
Problem: Cannot connect to GDB or target. Solution:-
Ensure GDB 13 or later is installed:
- Check that the Trace RMI server is running in Ghidra
-
Verify GDB can connect to the target independently:
- Check firewall settings if using remote debugging
LLDB/WinDbg Connector Issues
Problem: LLDB or WinDbg connector fails to start or connect. Solution:-
Verify the debugger is installed and in PATH:
- For WinDbg on Windows, ensure Windows SDK is installed
- Check that Python 3 is available and accessible by the connector
- Review the Ghidra console for error messages
Performance Issues
Slow Analysis Performance
Problem: Analysis takes a very long time or seems stuck. Solution:- Increase heap memory (see “Ghidra Runs Out of Memory” above)
-
Disable unnecessary analyzers:
- Analysis → Auto Analyze…
- Uncheck analyzers you don’t need
- Click Analyze
- Use a faster disk (SSD recommended) for project storage
- Close unnecessary tools and windows in Ghidra
UI Freezing or Hanging
Problem: Ghidra UI becomes unresponsive. Solution:- Check if analysis is running in the background (bottom-right corner)
- Try canceling long-running operations
- Increase memory allocation
- On Linux, ensure X server is configured properly for Java applications
Headless Analysis Issues
Headless Mode Fails on Linux
Problem: Headless analysis fails with AWT errors on Linux. Solution: Set up a virtual display:Platform-Specific Issues
macOS: “Ghidra is damaged and can’t be opened”
Problem: macOS Gatekeeper prevents Ghidra from opening. Solution:- System Preferences → Security & Privacy
- Click Open Anyway when prompted
Windows: Native Build Failures
Problem: Native components fail to build on Windows. Solution:- Ensure Microsoft Visual Studio 2017+ or Build Tools are installed
-
Verify these components are installed:
- MSVC (C++ compiler)
- Windows SDK
- C++ ATL (Active Template Library)
- Run Gradle from “Developer Command Prompt for VS”
-
Check that the MSVC compiler is in PATH:
Getting Additional Help
If your issue isn’t covered here:- Check Known Issues: Review the Known Issues page
- Search GitHub Issues: See if others have reported the problem
- Ask the Community: Post in GitHub Discussions
- Report a Bug: If you’ve found a new bug, create an issue
