我使用的是Ubuntu 14.04,其中python3是默认系统包。
我想用gdb来调试Python2.7程序,但遇到了以下问题:
当我在gdb中使用py
命令时,它会进入一个解释器,于是我在解释器中运行了以下命令:
首先,我检查了解释器版本:
(gdb) py
>import sys
>print(sys.version)
>end
3.4.0 (default, Apr 11 2014, 13:08:40)
[GCC 4.8.2]
然后我检查正在使用的解释器可执行文件
(gdb) py
>import sys
>print(sys.executable)
>end
/usr/bin/python
(gdb)
然后在Bash中,我检查解释器:
12:34]hostname ~ $ls -l /usr/bin/python
lrwxrwxrwx 1 root root 9 Dec 21 2013 /usr/bin/python -> python2.7
虽然gdb显示正在使用我的2.7解释器,但实际上它使用的是另一个解释器。我需要一个2.7解释器,才能与ubuntu包'python2.7-dbg'提供的python特定扩展一起使用,因为据我所知,目前还没有针对python 3.4的此类软件包,即使有,我想要调试的程序也运行在python 2.7上。
我的问题是如何使其使用我想要的解释器?
[编辑] 顺便说一下,请不要卸载python3。我在ubuntu 14.04上这样做,结果毁掉了我的系统。无法再次启动。我目前正在使用没有窗口管理器的系统(很酷),但你懂的。