README: Rework installation section

Document the OpenOCD installation with specific examples for package
managers and move the installation section to the beginning of the
document to make it more prominent.

Change-Id: I86e175fdd4060b49070a5c8d2b92ec1c6cfe6acf
Signed-off-by: Marc Schink <dev@zapb.de>
Reviewed-on: https://review.openocd.org/c/openocd/+/9395
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
This commit is contained in:
Marc Schink
2026-01-21 10:25:02 +01:00
committed by Antonio Borneo
parent c348b9f2d7
commit 7d6f3ede0e

118
README.md
View File

@@ -51,6 +51,75 @@ After OpenOCD startup, connect GDB with
(gdb) target extended-remote localhost:3333 (gdb) target extended-remote localhost:3333
# Installing OpenOCD
The easiest way to install OpenOCD is through your operating system's package
manager.
- Debian / Ubuntu
```sh
sudo apt install openocd
```
- Fedora
```sh
sudo dnf install openocd
```
- macOS (via Homebrew)
```sh
brew install open-ocd
```
- Windows (via MSYS2)
```sh
pacman -S mingw-w64-x86_64-openocd
```
These packages are often more stable than the bleeding-edge Git mainline, where
active development happens.
"Packagers" create binary releases of OpenOCD after the developers publish new
source code releases.
Older OpenOCD versions are not suitable for diagnosing issues in the current
release.
Users should stay in touch with their distribution maintainers or interface
vendors to ensure that appropriate updates are provided regularly.
If you use one of these binary packages, you must contact the Packager for
support or for newer binary versions.
The OpenOCD developers do not provide direct support for packaged binaries.
## A Note to OpenOCD Packagers
You are a PACKAGER of OpenOCD if you:
- Sell dongles and include pre-built binaries;
- Supply tools or IDEs (a development solution integrating OpenOCD);
- Build packages (e.g. RPM or DEB files for a GNU/Linux distribution).
As a PACKAGER, you will experience first reports of most issues.
When you fix those problems for your users, your solution may help
prevent hundreds (if not thousands) of other questions from other users.
If something does not work for you, please work to inform the OpenOCD
developers know how to improve the system or documentation to avoid
future problems, and follow-up to help us ensure the issue will be fully
resolved in our future releases.
That said, the OpenOCD developers would also like you to follow a few
suggestions:
- Send patches, including config files, upstream, participate in the
discussions;
- Enable all the options OpenOCD supports, even those unrelated to your
particular hardware;
- Use "ftdi" interface adapter driver for the FTDI-based devices.
# OpenOCD Documentation # OpenOCD Documentation
In addition to the in-tree documentation, the latest manuals may be In addition to the in-tree documentation, the latest manuals may be
@@ -135,55 +204,6 @@ STM32 QUAD/OCTO-SPI for Flash/FRAM/EEPROM, STMSMI, STR7x, STR9x, SWM050,
TI CC13xx, TI CC26xx, TI CC32xx, TI MSP432, Winner Micro w600, Xilinx XCF, TI CC13xx, TI CC26xx, TI CC32xx, TI MSP432, Winner Micro w600, Xilinx XCF,
XMC1xxx, XMC4xxx. XMC1xxx, XMC4xxx.
# Installing OpenOCD
## A Note to OpenOCD Users
If you would rather be working "with" OpenOCD rather than "on" it, your
operating system or JTAG interface supplier may provide binaries for
you in a convenient-enough package.
Such packages may be more stable than git mainline, where
bleeding-edge development takes place. These "Packagers" produce
binary releases of OpenOCD after the developers produces new "release"
versions of the source code. Previous versions of OpenOCD cannot be
used to diagnose problems with the current release, so users are
encouraged to keep in contact with their distribution package
maintainers or interface vendors to ensure suitable upgrades appear
regularly.
Users of these binary versions of OpenOCD must contact their Packager to
ask for support or newer versions of the binaries; the OpenOCD
developers do not support packages directly.
## A Note to OpenOCD Packagers
You are a PACKAGER of OpenOCD if you:
- Sell dongles and include pre-built binaries;
- Supply tools or IDEs (a development solution integrating OpenOCD);
- Build packages (e.g. RPM or DEB files for a GNU/Linux distribution).
As a PACKAGER, you will experience first reports of most issues.
When you fix those problems for your users, your solution may help
prevent hundreds (if not thousands) of other questions from other users.
If something does not work for you, please work to inform the OpenOCD
developers know how to improve the system or documentation to avoid
future problems, and follow-up to help us ensure the issue will be fully
resolved in our future releases.
That said, the OpenOCD developers would also like you to follow a few
suggestions:
- Send patches, including config files, upstream, participate in the
discussions;
- Enable all the options OpenOCD supports, even those unrelated to your
particular hardware;
- Use "ftdi" interface adapter driver for the FTDI-based devices.
# Building OpenOCD # Building OpenOCD
The INSTALL file contains generic instructions for running `configure` The INSTALL file contains generic instructions for running `configure`