【问题标题】:How to install python packages to embedded python in GDB/ clion2017.1如何将 python 包安装到 GDB/clion2017.1 中的嵌入式 python
【发布时间】:2017-09-21 01:43:30
【问题描述】:

我正在使用 CLion 2017.1 和 GDB 进行调试。使用 python 2.7 支持编译的 GDB,但没有模块。

我希望使用matplotlib 来绘制一些调试数据(使用GDB image watch),但没有matplotlib 存在。并且没有pip 来安装它。

我尝试使用(gdb) python import get_pip 安装pip,但是

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/home/user/temp/get_pip.py", line 28, in     <module>
    import tempfile
  File "/home/user/clion-2016.3.4/bin/gdb/lib/python2.7/tempfile.py", line 35, in <module>
    from random import Random as _Random
  File "/home/user/clion-2016.3.4/bin/gdb/lib/python2.7/random.py", line 48, in <module>
    from binascii import hexlify as _hexlify
ImportError: No module named binascii
Error while executing Python code.

所以我不知道如何将其他模块引导到 GDB 的嵌入式 python 中。

知道怎么做吗?

【问题讨论】:

  • 尝试使用安装在您系统上的 GDB(/usr/bin/gdb 左右)而不是捆绑的。有帮助吗?
  • python setup.py 不起作用吗?

标签: python python-2.7 gdb pip clion


【解决方案1】:

我尝试使用 (gdb) python import get_pip 安装 pip 但是

您不需要从 gdb shell 安装 python 模块。您可以像往常一样使用包管理器或 pip 从命令行安装它们。确保您安装了 Python2 版本的模块。安装模块后,您可以在 gdb 嵌入式 python 中使用它:

$ gdb -q
(gdb) python
>import matplotlib
>end
(gdb) 

【讨论】:

  • 它不起作用。我有同样的问题。我用 matplotlib 安装了 python。我可以在我的 python 脚本中使用它。但不在 gdb 内部:ModuleNotFoundError: No module named 'matplotlib'
  • 可能是 Python2/Python3 不匹配。尝试安装 Python2 和 Python3 版本的 matplotlib 模块。
  • 我的 gdb (sys.version) 说它使用 Python 3.6.3: 3.6.3 (v3.6.3:2c5fed8, Oct 3 2017, 17:26:49) [MSC v.1900 32位(英特尔)] 我安装了 python 2 和 python 3,都安装了 matplotlib。但我的 python3 是 64 位的。也许这就是问题所在。我会安装 python 3 32bit 并告诉你。
  • 不幸的是,它也无济于事。还是同样的错误:ModuleNotFoundError: No module named 'matplotlib'
  • 我在 linux (Ubuntu 18.04 LTS) 上,遇到了同样的问题。
猜你喜欢
  • 2018-09-19
  • 2021-10-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-31
  • 2015-05-13
  • 1970-01-01
相关资源
最近更新 更多