交叉编译GDB时Python丢失或不可用错误

交叉编译GDB时Python丢失或不可用错误,python,gdb,Python,Gdb,我在尝试交叉编译GDB时(使用--with python标志)出现此错误: 检查python:/usr/bin/python 检查python2.7:否 配置:错误:python丢失或不可用 我确保在/usr/bin中安装了python2.7。我甚至删除了软件包并重新安装。我试着使用——python=/usr/bin和——python=/usr/local,但没有成功。虽然我确信2.7已经安装。你知道怎么做吗?我对GDB7.4也有同样的问题,在花了一段时间调试后,终于让它工作了 通过检查文件/

我在尝试交叉编译GDB时(使用
--with python
标志)出现此错误:

检查python:/usr/bin/python
检查python2.7:否
配置:错误:python丢失或不可用

我确保在
/usr/bin
中安装了python2.7。我甚至删除了软件包并重新安装。我试着使用
——python=/usr/bin
——python=/usr/local
,但没有成功。虽然我确信2.7已经安装。你知道怎么做吗?

我对GDB7.4也有同样的问题,在花了一段时间调试后,终于让它工作了

通过检查文件
/gdb/config.log
,您将注意到一行:

configure:11031: gcc -o conftest -g -O2   -I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7   conftest.c -lncurses -lz -lm    -L/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/config -ldl -framework CoreFoundation -lpython2.7 -u _PyMac_Error Python.framework/Versions/2.7/Python >&5
似乎脚本
python/python config.py
返回了一些无效标志,导致
gcc
命令失败

解决方案是打开
/gdb/python/python config.py
并注释掉这两行:

#            if getvar('LINKFORSHARED') is not None:
#                libs.extend(getvar('LINKFORSHARED').split())

在编译GDB7.4.1时,我在Debian6.0上遇到了同样的问题

解决方案是安装python头

sudo apt-get install python2.6-dev
然后使用正确的标志进行配置

./configure --with-python

我刚刚遇到了一个类似的问题:使用Continuum的Python2.7构建GDB7.8.1,在我的例子中,它安装在非标准位置

在这种情况下,解决方案是在运行“configure”之前提供额外的配置:

export LDFLAGS="-Wl,-rpath,<non-standard-Python-lib-location> -L<non-standard-Python-lib-location>"
configure --with-python=<non-standard-Python-executable-location>
export-LDFLAGS=“-Wl,-rpath,-L”
配置--使用python=

我在构建ESP8266 SDK时遇到了这个错误。只是做了一个 sudo-apt-get-install-python-dev
现在它可以工作了。

+1它可以工作了。我在OSX10.6.8上编译了GDB7.5.1,没有其他问题。是的,这就是解决方案。在安装gdb 7.6.50.20130624而无需安装其他Python时,在OS X 10.6.8上也为我工作过。我可以使用我从python.org安装的经过大量修改的2.7.5版本,感谢您详细介绍了如何调试它。这对我很有帮助。它在Ubuntu12.04编译GDB7.6时起作用。安装python2.7-dev.YMMD。在debian wheezy上,我还必须安装python2.7-devapt-get安装
python3.5-dev
对我有效。你是如何解决这个问题的?下面的答案对我不适用。我和你有类似的问题我真的不记得了,对不起(这是4年前我遇到的问题……这对我来说很有效,但我必须使用
——启用共享
,来配置和编译python。