Bug 55945
| Summary: | Несовместимость GDB 9.1 и Python 3.12 в sisyphus_e2k | ||
|---|---|---|---|
| Product: | Sisyphus | Reporter: | a1batross <a1ba.omarov> |
| Component: | gdb | Assignee: | Michael Shigorin <mike> |
| Status: | CLOSED FIXED | QA Contact: | qa-sisyphus |
| Severity: | normal | ||
| Priority: | P5 | CC: | glebfm, grenka, ldv, mike, sbolshakov |
| Version: | unstable | ||
| Hardware: | e2k | ||
| OS: | Linux | ||
Спасибо; пока руки добираются до 15.2 -- поправим в 9.1. Или можно собрать костыль https://packages.altlinux.org/ru/sisyphus/srpms/python3-module-zombie-imp/ =) * Thu Sep 11 2025 Michael Shigorin <mike@altlinux> 9.1-alt1.E2K.27.020.4 - py3.12 import fix (ALT#55945; thx Alibek Omarov) (Ответ для Grigory Ustinov на комментарий #2) > Или можно собрать костыль python3-module-zombie-imp =) http://packages.altlinux.org/ru/sisyphus_e2k/srpms/python3-module-zombie-imp/ X] |

Description
a1batross 2025-09-11 09:52:49 MSKВ Python 3.12 был удалён модуль imp, который использует gdb в своих скриптах, а без Python GDB лишается многих функций. Чинится довольно просто, так как из imp он использовал всего одну функцию reload, которая есть в importlib. Нужно открыть /usr/share/gdb/python/gdb/__init__.py (gdb/python/lib/gdb/__init.py в исходниках) и в строчках в начале: if sys.version_info[0] > 2: # Python 3 moved "reload" from imp import reload заменить на if sys.version_info[0] > 2: # Python 3 moved "reload" from importlib import reload Альтернативно, можно собрать GDB 15.2 из недавно опубликованных исходников, в котором есть нужная проверка. Но я так делать ещё не пробовал.