大家好,阅读此消息,
由于我在桌面上设置了PYTHONPATH,每当我尝试使用像gdb或yum这样的命令时,我认为这与python无关,我有这个“语法错误:无效语法”拍打我的脸。我已经尝试了几个调试shell提示的东西,弄清楚到底发生了什么,但到目前为止我一直坚持这个问题。
我是这样的:
[charly@sn04 ~]$ gdb
File "/opt/anaconda3/lib/python3.5/site.py", line 176
file=sys.stderr)
^
SyntaxError: invalid syntax
这似乎与PYTHONPATH有关。当我解开这个时,一切正常。
我的PYTHONPATH:
export PYTHONPATH=/opt/anaconda3/lib/python3.5/
我尝试使用-x和-v调试shell,但调试信息没有帮助:
[charly@sn04 ~]$ gdb
gdb
+ gdb
File "/opt/anaconda3/lib/python3.5/site.py", line 176
file=sys.stderr)
^
SyntaxError: invalid syntax
我也试过设置一个陷阱:
trap "PARENT_COMMAND=\"$(ps -o comm= $PPID)\"" ERR
[charly@sn04 ~]$ gdb
gdb
+ gdb
File "/opt/anaconda3/lib/python3.5/site.py", line 176
file=sys.stderr)
^
SyntaxError: invalid syntax
PARENT_COMMAND="xterm"
++ PARENT_COMMAND=xterm
,看看哪个进程正在调用此错误,但到目前为止我无法弄清楚如何解决此问题。
提前感谢您提供任何线索或提示。
答案 0 :(得分:0)
检查gdb使用的python版本(gdb使用Python编写脚本)
$ (which gdb) | grep python
或
$ which gdb | xargs grep -a python
如果gdb使用的版本与当前PYTHONPATH版本不同,那么您应该将Python路径更改为gdb支持的版本或re-build gdb
另见:
gdb uses wrong python,AttributeError: 'module' object has no attribute 'pydebug'和How to change the Python Interpreter that gdb uses?。
答案 1 :(得分:0)
This.name
解决了我的问题(Git Bash,Windows 10)