mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2024-11-10 06:02:09 +00:00
GP-4842: Upping minimum supported Python version to 3.9
This commit is contained in:
parent
e4978bf296
commit
6b9cf67ab3
@ -212,11 +212,11 @@ import sys
|
|||||||
print(sys.version)
|
print(sys.version)
|
||||||
```
|
```
|
||||||
|
|
||||||
Suppose they get `3.8.10`.
|
Suppose they get `3.9.19`.
|
||||||
They'd then take the major and minor numbers to invoke `python3.8` directly:
|
They'd then take the major and minor numbers to invoke `python3.9` directly:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
python3.8 -m pip install ...
|
python3.9 -m pip install ...
|
||||||
```
|
```
|
||||||
|
|
||||||
A fancy way to just have gdb print the python command for you is:
|
A fancy way to just have gdb print the python command for you is:
|
||||||
|
@ -301,8 +301,8 @@ class="sourceCode bash"><code class="sourceCode bash"><span id="cb5-1"><a href="
|
|||||||
class="sourceCode gdb"><code class="sourceCode gdbsyntax"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a>(gdb) python-interactive</span>
|
class="sourceCode gdb"><code class="sourceCode gdbsyntax"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a>(gdb) python-interactive</span>
|
||||||
<span id="cb6-2"><a href="#cb6-2" aria-hidden="true" tabindex="-1"></a>>>> import sys</span>
|
<span id="cb6-2"><a href="#cb6-2" aria-hidden="true" tabindex="-1"></a>>>> import sys</span>
|
||||||
<span id="cb6-3"><a href="#cb6-3" aria-hidden="true" tabindex="-1"></a>>>> sys.version</span></code></pre></div>
|
<span id="cb6-3"><a href="#cb6-3" aria-hidden="true" tabindex="-1"></a>>>> sys.version</span></code></pre></div>
|
||||||
<p>Suppose this identifies version 3.7. Retry the installation commands
|
<p>Suppose this identifies version 3.9. Retry the installation commands
|
||||||
using <code>python3.7 -m pip ...</code>. If you have multiple copies of
|
using <code>python3.9 -m pip ...</code>. If you have multiple copies of
|
||||||
the same version in different locations, you may need to invoke
|
the same version in different locations, you may need to invoke
|
||||||
<code>python3</code> using its complete path.</p>
|
<code>python3</code> using its complete path.</p>
|
||||||
<p>In the worst case, copy the Python source over and add it to your
|
<p>In the worst case, copy the Python source over and add it to your
|
||||||
|
@ -145,8 +145,8 @@ Or, inside `gdb`:
|
|||||||
>>> sys.version
|
>>> sys.version
|
||||||
```
|
```
|
||||||
|
|
||||||
Suppose this identifies version 3.7.
|
Suppose this identifies version 3.9.
|
||||||
Retry the installation commands using `python3.7 -m pip ...`.
|
Retry the installation commands using `python3.9 -m pip ...`.
|
||||||
If you have multiple copies of the same version in different locations, you may need to invoke `python3` using its complete path.
|
If you have multiple copies of the same version in different locations, you may need to invoke `python3` using its complete path.
|
||||||
|
|
||||||
In the worst case, copy the Python source over and add it to your `PYTHONPATH`.
|
In the worst case, copy the Python source over and add it to your `PYTHONPATH`.
|
||||||
|
@ -98,7 +98,7 @@ Ghidra team if you have a specific need.</p></blockquote>
|
|||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</ul>
|
</ul>
|
||||||
<li>Python3 (3.7 to 3.12; for Debugger support)</li>
|
<li>Python3 (3.9 to 3.12; for Debugger support)</li>
|
||||||
<ul>
|
<ul>
|
||||||
<li>This is available from <a href="https://python.org">Python.org</a> or most operating system's
|
<li>This is available from <a href="https://python.org">Python.org</a> or most operating system's
|
||||||
app stores or software repositories. For Linux it is recommended that the system's package
|
app stores or software repositories. For Linux it is recommended that the system's package
|
||||||
@ -396,7 +396,7 @@ existing pre-built native binaries in the <i>os/<platform>/</i> subdirecto
|
|||||||
|
|
||||||
<h2><a name="DebuggerPython"></a>Installing the Debugger's Python Dependencies</h2>
|
<h2><a name="DebuggerPython"></a>Installing the Debugger's Python Dependencies</h2>
|
||||||
<p>The Debugger now uses Python to connect to the host platform's native debuggers. This requires
|
<p>The Debugger now uses Python to connect to the host platform's native debuggers. This requires
|
||||||
Python3 (3.7 to 3.12) and some additional packages. These packages are included in the distribution,
|
Python3 (3.9 to 3.12) and some additional packages. These packages are included in the distribution,
|
||||||
but you may still install them from PyPI if you prefer:</p>
|
but you may still install them from PyPI if you prefer:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>psutil</li>
|
<li>psutil</li>
|
||||||
|
@ -48,7 +48,7 @@ To create the latest development build for your platform from this source reposi
|
|||||||
##### Install build tools:
|
##### Install build tools:
|
||||||
* [JDK 21 64-bit][jdk]
|
* [JDK 21 64-bit][jdk]
|
||||||
* [Gradle 8.5+][gradle] (or provided Gradle wrapper if Internet connection is available)
|
* [Gradle 8.5+][gradle] (or provided Gradle wrapper if Internet connection is available)
|
||||||
* [Python3][python3] (version 3.7 to 3.12) with bundled pip
|
* [Python3][python3] (version 3.9 to 3.12) with bundled pip
|
||||||
* make, gcc, and g++ (Linux/macOS-only)
|
* make, gcc, and g++ (Linux/macOS-only)
|
||||||
* [Microsoft Visual Studio][vs] 2017+ or [Microsoft C++ Build Tools][vcbuildtools] with the
|
* [Microsoft Visual Studio][vs] 2017+ or [Microsoft C++ Build Tools][vcbuildtools] with the
|
||||||
following components installed (Windows-only):
|
following components installed (Windows-only):
|
||||||
|
@ -49,7 +49,7 @@ if ("32".equals(System.getProperty("sun.arch.data.model"))) {
|
|||||||
/***************************************************************************************
|
/***************************************************************************************
|
||||||
* Identify supported Python command
|
* Identify supported Python command
|
||||||
***************************************************************************************/
|
***************************************************************************************/
|
||||||
project.ext.SUPPORTED_PY_VERSIONS = ['3.12', '3.11', '3.10', '3.9', '3.8', '3.7']
|
project.ext.SUPPORTED_PY_VERSIONS = ['3.12', '3.11', '3.10', '3.9']
|
||||||
project.ext.PYTHON3 = findPython3()
|
project.ext.PYTHON3 = findPython3()
|
||||||
project.ext.PYTHON_DEPS = new HashSet<String>()
|
project.ext.PYTHON_DEPS = new HashSet<String>()
|
||||||
|
|
||||||
@ -215,10 +215,10 @@ def findPython3() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Don't fail until task execution. Just let "python3" fail.
|
// Don't fail until task execution. Just let "python3" fail.
|
||||||
// Force use of non-existent python3.7 instead of unsupported python version
|
// Force use of non-existent python3.9 instead of unsupported python version
|
||||||
// which should fail if a python build is performed.
|
// which should fail if a python build is performed.
|
||||||
println("Warning: Python3 command not found (required for build)")
|
println("Warning: Python3 command not found (required for build)")
|
||||||
return 'python3.7'
|
return 'python3.9'
|
||||||
}
|
}
|
||||||
|
|
||||||
/******************************************************************************************
|
/******************************************************************************************
|
||||||
|
Loading…
Reference in New Issue
Block a user