В моем ~/.gdbinit
я хотел бы иметь возможность ссылаться на симпатичные принтеры Python GDB, установленные в моем домашнем каталоге, по относительному пути:
python
import sys
# 1, works
sys.path.insert(0, '/home/<username>/.gdb_viz')
# 2, doesn't work
# sys.path.insert(0, '~/.gdb_viz')
# 3, doesn't work
# sys.path.insert(0, '.gdb_viz')
from libstdcxx.v6.printers import register_libstdcxx_printers
register_libstdcxx_printers (None)
end
~/.gdb_viz
содержит каталог libstdcxx
исвязанные файлы Python.
Как мне заставить работать что-то вроде # 2 или # 3?
РЕДАКТИРОВАТЬ: Кроме постоянного запуска gdb
из моего домашнего каталога:)
Общая информация / вывод GDB:
GNU gdb (GDB) 7.1-ubuntu
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
вывод "работает":
Reading symbols from <executable>...done.
вывод "не работает":
Traceback (most recent call last):
File "<string>", line 3, in <module>
ImportError: No module named libstdcxx.v6.printers
/home/<username>/.gdbinit:6: Error in sourced command file:
Error while executing Python code.
Reading symbols from <executable>...done.