2017-04-24 57 views
5

我使用CLion 2017.1和GDB進行調試。 GDB使用python 2.7支持編譯,但沒有模塊。如何在GDB/clion2017.1中安裝python包到嵌入式python

我希望使用matplotlib來繪製一些調試數據(使用GDB image watch),但沒有matplotlib的存在。並沒有pip來安裝它。

我試過用(gdb) python import get_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. 

所以我不知道怎麼引導的附加模塊instullation到GDB的嵌入式Python安裝pip

任何想法如何做到這一點?

+0

嘗試使用安裝在系統上的GDB('/ usr/bin/gdb'),而不是捆綁的。它有幫助嗎? –

+0

'python setup.py'不工作嗎? – Simon

回答

0

I've tried to install pip using (gdb) python import get_pip but

您不需要從gdb shell安裝python模塊。您可以照常使用您的軟件包管理器或pip從命令行安裝它們。確保你安裝了Python2版本的模塊。一旦模塊安裝完畢,您可以在gdb embedded python中使用它:

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

它不起作用。我有同樣的問題。我已經用matplotlib安裝了python。我可以在我的Python腳本中使用它。但不在gdb中:ModuleNotFoundError:沒有名爲'matplotlib'的模塊 –

+0

它可能是Python2/Python3不匹配。嘗試安裝matplotlib模塊的Python2和Python3版本。 – ks1322

+0

我的gdb(sys.version)說它使用Python 3.6.3:3.6.3(v3.6.3:2c5fed8,Oct 3 2017,17:26:49)[MSC v.1900 32 bit(Intel)]我有使用matplotlib安裝了python 2和python 3。但我的python3是64位。也許這是問題。我會安裝python 3 32bit並讓你知道。 –