[PATCH] gdb: prefere python3 if it is installed
Christian MAUDERER
christian.mauderer at embedded-brains.de
Thu Aug 19 09:24:04 UTC 2021
PS: I had the problem on the 5 branch of RTEMS source builder. I think
we should apply a patch to both: master and the 5 branch.
Am 19.08.21 um 10:34 schrieb Christian Mauderer:
> More and more systems stop shipping python2. So we should start to
> prefer python3 over python2. For building gdb it is not only necessary
> to have a python binary installed, but also the matching python-devel
> packet. On a lot of hosts that will now be more often python3-devel
> and not python2-devel.
> ---
>
> Note: Please see that patch more as an suggestion / base for
> discussion. I'm open to better solutions.
>
> My problem that triggered this patch was a build of a toolchain on a
> github CI/CD system that has been originally set up by one of our
> users (see [1] for the log). It seems that on the "macos-latest"
> machines a python2 is installed but no python2 headers are found.
> Homebrew - which could be used earlier on MacOS to install the
> necessary headers - dropped the python at 2 packet. So it seems that on a
> modern MacOS there is no possibility to get python2 headers. If
> python2 is still installed on the machine (for whatever reason), it is
> not possible to successfully use RTEMS source builder to build a gdb.
> If python3 is preferred instead, that should solve the problem.
>
> Note that at the moment I only tried it on my OpenSUSE-Linux machine.
> For that I made sure that I have python2 and python3 installed but no
> python-devel (which is python2 on OpenSUSE). Earlier I know that I
> needed python-devel to build gdb. With this patch, I can build with
> only python3-devel.
>
> I'll try to add that patch to the CI too to see whether it works on
> MacOS. But I'm a bit unsure what other problems this patch could
> trigger and therefore I want to start a discussion early.
>
> Best regards
>
> Christian
>
> [1] https://github.com/grisp/grisp2-rtems-toolchain/runs/3362717606
> Note: The "Get Errorinfo" step prints the rsb-report-*.txt
>
>
> source-builder/config/gdb-common-1.cfg | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/source-builder/config/gdb-common-1.cfg b/source-builder/config/gdb-common-1.cfg
> index 397d44d..42fe263 100644
> --- a/source-builder/config/gdb-common-1.cfg
> +++ b/source-builder/config/gdb-common-1.cfg
> @@ -42,7 +42,7 @@
> # 2. Does the version of gdb specify a version of python that must be
> # used. Override with '%define gdb-python-version python2'.
> #
> -# 3. Search for 'python2' and if not found search for 'python3'.
> +# 3. Search for 'python3' and if not found search for 'python2'.
> #
> %if %{defined gdb-python2}
> %define gdb-enable-python %{gdb_python2}
> @@ -53,9 +53,9 @@
> %if %{defined gdb-python-version}
> %define gdb-enable-python %(command -v %{gdb-python-version} || true)
> %else
> - %define gdb-enable-python %(command -v python2 || true)
> + %define gdb-enable-python %(command -v python3 || true)
> %if %{gdb-enable-python} == %{nil}
> - %define gdb-enable-python %(command -v python3 || true)
> + %define gdb-enable-python %(command -v python2 || true)
> %endif
> %if %{gdb-enable-python} == %{nil}
> %define gdb-enable-python %(command -v python || true})
>
--
--------------------------------------------
embedded brains GmbH
Herr Christian MAUDERER
Dornierstr. 4
82178 Puchheim
Germany
email: christian.mauderer at embedded-brains.de
phone: +49-89-18 94 741 - 18
fax: +49-89-18 94 741 - 08
Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
More information about the devel
mailing list