gdbinit、prettyprinters和相关目录?

2024-06-16 14:08:49 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的~/.gdbinit中,我希望能够通过相对路径引用安装在主目录中的GDB python pretty打印机:

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信息/输出:

^{pr2}$

“工作”输出:

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.

Tags: pathfromimporthomesysusernameinsert主目录
2条回答

我把这个放在路上_设置.py 然后运行source~/.gdb_viz/path_设置.py 从我的.gdbinit 没有测试过3)。在

# Add the path of this script to pythons search path. 
import os, sys

sys.path.append(os.path.expanduser(os.path.dirname(__file__)))

未经测试,但应能正常工作:

python
import sys, os

sys.path.insert(0, os.getenv('HOME') + '/.gdb_viz')

相关问题 更多 >