Skip to content

Python 3.10 will not load in gdb 8 or 9 series on linux x86_64 #49

Description

@stuartarchibald

On a linux system running on x86_64, Anaconda builds of Python 3.10 cause at least gdb version 8 and 9 to hang on attempted loading.

Reproducer (using system RHEL based SCL gdb from devtoolset-9):

$ conda create -q -y -n _tmp_py310 python=3.10
$ conda activate _tmp_py310
$ PYTHON_BINARY=`which python`
$ /opt/rh/devtoolset-9/root/bin/gdb $PYTHON_BINARY # hangs

example output:

$ conda create -q -y -n _tmp_py310 python=3.10
Collecting package metadata (repodata.json): ...working... done
Solving environment: ...working... done

## Package Plan ##

  environment location: <env_path>/_tmp_py310

  added / updated specs:
    - python=3.10


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    ncurses-6.3                |       h7f8727e_2         1.0 MB
    python-3.10.0              |       h151d27f_3        23.5 MB
    ------------------------------------------------------------
                                           Total:        24.5 MB

The following NEW packages will be INSTALLED:

  _libgcc_mutex      pkgs/main/linux-64::_libgcc_mutex-0.1-main
  _openmp_mutex      pkgs/main/linux-64::_openmp_mutex-4.5-1_gnu
  bzip2              pkgs/main/linux-64::bzip2-1.0.8-h7b6447c_0
  ca-certificates    pkgs/main/linux-64::ca-certificates-2021.10.26-h06a4308_2
  certifi            pkgs/main/linux-64::certifi-2021.5.30-py310h06a4308_0
  ld_impl_linux-64   pkgs/main/linux-64::ld_impl_linux-64-2.35.1-h7274673_9
  libffi             pkgs/main/linux-64::libffi-3.3-he6710b0_2
  libgcc-ng          pkgs/main/linux-64::libgcc-ng-9.3.0-h5101ec6_17
  libgomp            pkgs/main/linux-64::libgomp-9.3.0-h5101ec6_17
  libstdcxx-ng       pkgs/main/linux-64::libstdcxx-ng-9.3.0-hd4cf53a_17
  libuuid            pkgs/main/linux-64::libuuid-1.0.3-h7f8727e_2
  ncurses            pkgs/main/linux-64::ncurses-6.3-h7f8727e_2
  openssl            pkgs/main/linux-64::openssl-1.1.1l-h7f8727e_0
  pip                pkgs/main/linux-64::pip-21.2.4-py310h06a4308_0
  python             pkgs/main/linux-64::python-3.10.0-h151d27f_3
  readline           pkgs/main/linux-64::readline-8.1-h27cfd23_0
  setuptools         pkgs/main/linux-64::setuptools-58.0.4-py310h06a4308_0
  sqlite             pkgs/main/linux-64::sqlite-3.36.0-hc218d9a_0
  tk                 pkgs/main/linux-64::tk-8.6.11-h1ccaba5_0
  tzdata             pkgs/main/noarch::tzdata-2021e-hda174b7_0
  wheel              pkgs/main/noarch::wheel-0.37.0-pyhd3eb1b0_1
  xz                 pkgs/main/linux-64::xz-5.2.5-h7b6447c_0
  zlib               pkgs/main/linux-64::zlib-1.2.11-h7b6447c_3


Preparing transaction: ...working... done
Verifying transaction: ...working... done
Executing transaction: ...working... done

$ conda activate _tmp_py310

$ PYTHON_BINARY=`which python`

$ echo $PYTHON_BINARY
<env_path>/_tmp_py310/bin/python

$ /opt/rh/devtoolset-9/root/bin/gdb $PYTHON_BINARY
GNU gdb (GDB) Red Hat Enterprise Linux 8.3-3
<snip>

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from <env_path>/_tmp_py310/bin/python...
^Z

Further information:

  • RHEL based SCL devtoolset-7 (gdb 8.0.1), devtoolset-9 (gdb 8.3-3) and devtoolset-10 (gdb 9.2-10) all hang.
  • RHEL default gdb (gdb 7.6.1) seems to work ok.
  • RHEL based SCL devtoolset-10 (gdb 9.2-10) works with Python 3.10 from the python.org docker containers.
  • Using the gdb packages from conda-forge and trying to load the Anaconda Python 3.10 binary gives the following:
    • gdb=7: hangs
    • gdb=8: hangs
    • gdb=9: hangs
    • gdb=10: works
    • gdb=11: works

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions