mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2024-11-10 06:02:09 +00:00
GP-2132: Upgrade to Java 17 source and target compatibility
This commit is contained in:
parent
25aa4663d9
commit
0b3a92dfe6
18
DevGuide.md
18
DevGuide.md
@ -29,19 +29,19 @@ The following is a list of dependencies, in no particular order.
|
||||
This guide includes instructions for obtaining many of these at the relevant step(s).
|
||||
You may not need all of these, depending on which portions you are building or developing.
|
||||
#### At minimum you will need all of the following
|
||||
* Java JDK 11 (64-bit) - Free long term support (LTS) versions of JDK 11 are provided by:
|
||||
* Java JDK 17 (64-bit) - Free long term support (LTS) versions of JDK 17 are provided by:
|
||||
- Adoptium Temurin
|
||||
- https://adoptium.net/releases.html?variant=openjdk11&jvmVariant=hotspot
|
||||
- https://adoptium.net/temurin/releases
|
||||
- Amazon Corretto
|
||||
- https://docs.aws.amazon.com/corretto/latest/corretto-11-ug/downloads-list.html
|
||||
* Gradle 6.8+ or 7.x
|
||||
- https://docs.aws.amazon.com/corretto/latest/corretto-17-ug/downloads-list.html
|
||||
* Gradle 7.3+
|
||||
- https://gradle.org/releases/
|
||||
* A C/C++ compiler - We use GCC on Linux, Xcode (Clang) on macOS, and Visual Studio (2017 or later) on Windows.
|
||||
- https://gcc.gnu.org/
|
||||
- https://developer.apple.com/xcode/
|
||||
- https://visualstudio.microsoft.com/downloads/
|
||||
#### Optional for Development
|
||||
* Eclipse - It must support JDK 11. Eclipse 2018-12 or later should work. Other IDEs may work, but we have not tested them.
|
||||
* Eclipse - Other IDEs may work, but we have not tested them.
|
||||
- https://www.eclipse.org/downloads/
|
||||
#### Necessary unless a download zip snapshot of the ghidra repository is used
|
||||
* Git - We use the official installer on Windows. For windows you can also use the github CLI or git from with (Windows Subsystem for Linux - WSL). Most Linux distros have git in their repos. Xcode provides git on macOS. You can skip Git if you download a .zip file of the ghidra repository.
|
||||
@ -72,13 +72,13 @@ If you need these offline, a reasonable course of action is to set up a developm
|
||||
If you're on Windows, install Git unless you will download a .zip clone of the ghidra repository. If you go the manual route
|
||||
many of the commands given below must be executed in Bash (Windows Subsystem for Linux (WSL), or Use git-bash or MSYS from MinGW).
|
||||
|
||||
Install OpenJDK 11 and make sure it's the default java.
|
||||
Install JDK 17 and make sure it's the default java.
|
||||
|
||||
Install Eclipse.
|
||||
You can launch Eclipse with any JRE/JDK, but you'll need to ensure Eclipse knows about your JDK 11 installation.
|
||||
In Eclipse, select Window -> Preferences (Eclipse -> Preferences on macOS), then navigate to Java -> Installed JREs, and ensure a JDK 11 is configured.
|
||||
You can launch Eclipse with any JRE/JDK, but you'll need to ensure Eclipse knows about your JDK 17 installation.
|
||||
In Eclipse, select Window -> Preferences (Eclipse -> Preferences on macOS), then navigate to Java -> Installed JREs, and ensure a JDK 17 is configured.
|
||||
|
||||
Install Gradle, add it to your `PATH`, and ensure it is launched using JDK 11.
|
||||
Install Gradle, add it to your `PATH`, and ensure it is launched using JDK 17.
|
||||
|
||||
## Setup Source Repository
|
||||
|
||||
|
@ -2,7 +2,7 @@ application.name=Ghidra
|
||||
application.version=10.2
|
||||
application.release.name=DEV
|
||||
application.layout.version=1
|
||||
application.gradle.min=6.8
|
||||
application.java.min=11
|
||||
application.gradle.min=7.3
|
||||
application.java.min=17
|
||||
application.java.max=
|
||||
application.java.compiler=11
|
||||
application.java.compiler=17
|
||||
|
@ -18,7 +18,7 @@
|
||||
|
||||
<h1>Ghidra Installation Guide</h1>
|
||||
<p>
|
||||
The installation information provided is effective as of Ghidra 10.1.2 and is subject to change with
|
||||
The installation information provided is effective as of Ghidra 10.2 and is subject to change with
|
||||
future releases.
|
||||
</p>
|
||||
|
||||
@ -82,16 +82,16 @@ Ghidra team if you have a specific need.</p></blockquote>
|
||||
</ul>
|
||||
<h3>Software</h3>
|
||||
<ul>
|
||||
<li>Java 11 64-bit Runtime and Development Kit (JDK) (see <a href="#JavaNotes">Java Notes</a>)</li>
|
||||
<li>Java 17 64-bit Runtime and Development Kit (JDK) (see <a href="#JavaNotes">Java Notes</a>)</li>
|
||||
<ul>
|
||||
<li>Free long term support (LTS) versions of JDK 11 are provided by:</li>
|
||||
<li>Free long term support (LTS) versions of JDK 17 are provided by:</li>
|
||||
<ul>
|
||||
<li>
|
||||
<a href="https://adoptium.net/releases.html?variant=openjdk11&jvmVariant=hotspot">
|
||||
<a href="https://adoptium.net/temurin/releases">
|
||||
Adoptium Temurin</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://docs.aws.amazon.com/corretto/latest/corretto-11-ug/downloads-list.html">
|
||||
<a href="https://docs.aws.amazon.com/corretto/latest/corretto-17-ug/downloads-list.html">
|
||||
Amazon Corretto</a>
|
||||
</li>
|
||||
</ul>
|
||||
@ -579,12 +579,6 @@ be installed in a pre-existing Eclipse installation.</p>
|
||||
Language versioning and migration does not handle complex changes in the use of the context
|
||||
register.
|
||||
</li>
|
||||
<li>
|
||||
Ghidra uses Java reflection in a manner that has been deprecated in newer versions of Java. It
|
||||
is expected to see Java warnings the about illegal reflective access, especially when importing
|
||||
new files. Future versions of Ghidra will address this in order to ensure compatibility with
|
||||
the newest versions of Java.
|
||||
</li>
|
||||
<li>
|
||||
Ghidra will not launch when its path contains a "!" character. This is to avoid issues that
|
||||
Java's internal libraries have parsing these paths ("!" is used as a jar-separator by Java).
|
||||
|
@ -29,7 +29,7 @@ of how you might be impacted.
|
||||
|
||||
## Install
|
||||
To install an official pre-built multi-platform Ghidra release:
|
||||
* Install [JDK 11 64-bit][jdk11]
|
||||
* Install [JDK 17 64-bit][jdk17]
|
||||
* Download a Ghidra [release file][releases]
|
||||
* Extract the Ghidra release file
|
||||
* Launch Ghidra: `./ghidraRun` (or `ghidraRun.bat` for Windows)
|
||||
@ -43,8 +43,8 @@ directory.
|
||||
To create the latest development build for your platform from this source repository:
|
||||
|
||||
##### Install build tools:
|
||||
* [JDK 11 64-bit][jdk11]
|
||||
* [Gradle 6.8+ or 7.x][gradle]
|
||||
* [JDK 17 64-bit][jdk17]
|
||||
* [Gradle 7.3+][gradle]
|
||||
* make, gcc, and g++ (Linux/macOS-only)
|
||||
* [Microsoft Visual Studio][vs] (Windows-only)
|
||||
|
||||
@ -113,7 +113,7 @@ source project.
|
||||
[devguide]: DevGuide.md
|
||||
[career]: https://www.intelligencecareers.gov/nsa
|
||||
[releases]: https://github.com/NationalSecurityAgency/ghidra/releases
|
||||
[jdk11]: https://adoptium.net/releases.html?variant=openjdk11&jvmVariant=hotspot
|
||||
[jdk17]: https://adoptium.net/temurin/releases
|
||||
[gradle]: https://gradle.org/releases/
|
||||
[vs]: https://visualstudio.microsoft.com/vs/community/
|
||||
[eclipse]: https://www.eclipse.org/downloads/packages/
|
||||
|
@ -1,7 +1,6 @@
|
||||
##VERSION: 2.0
|
||||
.gitattributes||GHIDRA||||END|
|
||||
.gitignore||GHIDRA||||END|
|
||||
.gitlab-ci.yml||GHIDRA||||END|
|
||||
CONTRIBUTING.md||GHIDRA||||END|
|
||||
DISCLAIMER.md||GHIDRA||||END|
|
||||
DebuggerDevGuide.md||GHIDRA||||END|
|
||||
|
Loading…
Reference in New Issue
Block a user