Сбой GDB с: ImportError: Нет модуля с именем libstdcxx.v6.printers

У меня проблема с ГБД. Всякий раз, когда я пытаюсь отладить любую программу на C ++, сразу после ее запуска GDB выдает такую ​​ошибку:

(gdb) run
Starting program: /home/errikos/Workspaces/tests/a.out 
Traceback (most recent call last):
  File "/usr/lib/debug/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.18-gdb.py", line 59, in <module>
    from libstdcxx.v6.printers import register_libstdcxx_printers
ImportError: No module named libstdcxx.v6.printers
Traceback (most recent call last):
  File "/usr/lib/debug/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.18-gdb.py", line 59, in <module>
    from libstdcxx.v6.printers import register_libstdcxx_printers
ImportError: No module named libstdcxx.v6.printers

После этого GDB продолжает работать (т. Е. Не падает полностью).

Я знаю, что есть несколько сообщений об ошибках по этому поводу ( здесь , здесь и здесь ). Во втором отчете также утверждается, что выпущено исправление. В третьем, есть обходной путь символической ссылки, который не работал для меня (и который мне не нравится, даже если он работал).

Кто-нибудь нашел обходной путь для этого? Отсутствует ли какой-либо пакет?

Примечание: У меня активирован тестовый билд Ubuntu Toolchain (ppa: ubuntu-toolchain-r / test) PPA.

14
задан 15 September 2013 в 18:15

1 ответ

Это ошибка в /usr/lib/debug/usr/lib/$triple/libstdc++.so.6.0.18-gdb.py; если бы он работал правильно, вы бы увидели ImportError только один раз, и симпатичные принтеры сработали бы.

См. http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=701935#18 для получения некоторой информации о том, что здесь происходит не так. Это хорошо работало в Debian gcc-4.7, но до недавнего времени не работало в gcc-4.8 для Debian. Я не уверен, пытался ли я сделать это с gcc-4.6.

В любом случае, вы можете пропатчить этот файл, чтобы посмотреть в нужном месте.

0
ответ дан 15 September 2013 в 18:15

Другие вопросы по тегам:

Похожие вопросы: