mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2025-10-03 17:59:46 +02:00
Added GDT/FIDDB instructions and point to ghidra-data repo.
This commit is contained in:
parent
cfa2b7d350
commit
9cb8e07ccb
1 changed files with 23 additions and 4 deletions
23
DevGuide.md
23
DevGuide.md
|
@ -260,14 +260,31 @@ Some features of Ghidra require the curation of rather extensive data bases.
|
||||||
These include the Data Type Archives and Function ID Databases, both of which require collecting header files and libraries for the relevant SDKs and platforms.
|
These include the Data Type Archives and Function ID Databases, both of which require collecting header files and libraries for the relevant SDKs and platforms.
|
||||||
Much of this work is done by hand.
|
Much of this work is done by hand.
|
||||||
Until this process is documented, those artifacts can be extracted from an official distribution and combined with your build output.
|
Until this process is documented, those artifacts can be extracted from an official distribution and combined with your build output.
|
||||||
|
The archives included in our official builds can be found in the [ghidra-data] repository.
|
||||||
|
|
||||||
## Building Data Type Archives
|
## Building Data Type Archives
|
||||||
|
|
||||||
TODO
|
This task is often done manually from the Ghidra GUI, and the archives included in our official build require a fair bit of fine tuning.
|
||||||
|
From a CodeBrowser window, select File -> Parse C Source.
|
||||||
|
From here you can create and configure parsing profiles, which lists headers and pre-processor options.
|
||||||
|
Then, click "Parse to File" to create the Data Type Archive.
|
||||||
|
The result can be added to an installation or source tree by copying it to `Ghidra/Features/Base/data/typeinfo`.
|
||||||
|
|
||||||
## Building FID Databases
|
## Building FID Databases
|
||||||
|
|
||||||
TODO
|
This task is often done manually from the Ghidra GUI, and the archives included in our official build require a fair bit of fine tuning.
|
||||||
|
You will first need to import the relevant libraries from which you'd like to produce a FID database.
|
||||||
|
This is often a set of libraries from an SDK.
|
||||||
|
We include a variety of Visual Studio platforms in the official build.
|
||||||
|
|
||||||
|
From a CodeBrowser window, select File -> Configure.
|
||||||
|
Enabled the "Function ID" plugins, and close the dialog.
|
||||||
|
Now, from the CodeBrowser window, select Tools -> Function ID -> Create new empty FidDb.
|
||||||
|
Choose a destination file.
|
||||||
|
Now, select Tools -> Function ID -> Populate FidDb from programs.
|
||||||
|
Fill out the options appropriately and click OK.
|
||||||
|
|
||||||
|
If you'd like some details of our fine tuning, take a look at `Ghidra/Features/FunctionID/building_fid.txt`.
|
||||||
|
|
||||||
# Developing / Building the GhidraDev Plugin
|
# Developing / Building the GhidraDev Plugin
|
||||||
|
|
||||||
|
@ -316,3 +333,5 @@ gradle cdtUnpack pyDevUnpack
|
||||||
|
|
||||||
If you're using BuildShip, simply refresh the Gradle project in Eclipse.
|
If you're using BuildShip, simply refresh the Gradle project in Eclipse.
|
||||||
If you're not using BuildShip, re-run `gradle eclipse` and import the new project.
|
If you're not using BuildShip, re-run `gradle eclipse` and import the new project.
|
||||||
|
|
||||||
|
[ghidra-data]: https://github.com/NationalSecurityAgency/ghidra-data
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue