在调试嵌入式目标时使用了错误的python解释器

时间:2017-11-16 23:06:32

标签: c++ python-3.x cmake clion

我使用MinGW-w64(5.0.3)运行CLion(2017.3 RC)并在Windows 10 x64上使用gcc / g ++(7.2.0)+ CMake(3.9.3)编译嵌入的目标python(3.6.3 64位)。运行时一切正常,但是当我尝试调试它并逐步完成CLion时,我得到了

File "C:\Python36\Lib/site.py", line 178 file=sys.stderr) ^ SyntaxError: invalid syntax

我的PYTHONPATH指向Python 3安装。我的系统上没有安装Python 2,但似乎Python 2解释器正在尝试使用Python 3 Lib。经过一番挖掘后,我注意到MinGW-w64捆绑了Python 2但是即使我删除了libs,include和exe,我也得到了同样的错误。

1 个答案:

答案 0 :(得分:0)

经过多次挖掘后,我了解到python2已经从7.0+版本嵌入到gdb中了。因此,如果您尝试运行MinGW64的gdb(比如尝试从CLion进行调试)并且PYTHONPATH指向python3安装,则会遇到语法错误。发生这种情况是因为嵌入式python2正在尝试使用python3库。

gdb failing with PYTHONPATH pointing towards a python3 installation

我仍然无法调试嵌入python的C ++目标,但这是一个不同的问题......