RangerKnight 2022-12-12 12:13 采纳率: 80%
浏览 82
已结题

Ubuntu服务器下gdb发生python相关错误【Fatal Python error:……】

问题描述:

在Ubuntu20.04服务器上安装gdb,本地Clion调用服务器远程gdb进行远程开发时机器检测不到gdb。在服务器上测试gdb时发生下述报错。

环境

服务器:Ubuntu20
python环境:使用pyenv安装的python3.9.0,已设置为全局版本,能正常使用。pyenv安装在如下路径:/usr/local/.pyenv
gdb

报错详情:

root@hecs:/usr/lib# gdb --help
Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
Python path configuration:
  PYTHONHOME = (not set)
  PYTHONPATH = (not set)
  program name = '/usr/bin/python'
  isolated = 0
  environment = 1
  user site = 1
  import site = 1
  sys._base_executable = '/usr/bin/python'
  sys.base_prefix = '/usr'
  sys.base_exec_prefix = '/usr'
  sys.executable = '/usr/bin/python'
  sys.prefix = '/usr'
  sys.exec_prefix = '/usr'
  sys.path = [
    '/usr/lib/python38.zip',
    '/usr/lib/python3.8',
    '/usr/lib/lib-dynload',
  ]
Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding
Python runtime state: core initialized
ModuleNotFoundError: No module named 'encodings'

Current thread 0x00007f131c880600 (most recent call first):
<no Python frame>

请求各位解答!

gdb无法调用,现在本地Clion就无法调试代码(开始是好的,不知怎么滴就出问题了,呜~~),希望得到各位的帮助!

  • 写回答

2条回答 默认 最新

  • RangerKnight 2022-12-13 11:18
    关注

    上述问题的原因,从stack上找到了问题所在,只是我未能成功解决,也许因为来回修改环境已经乱了,删也删不干净,最后只能重装系统再装一次gdb这些就好了。

    问题的大概原因就是,这种问题多出现在系统拥有多个python版本情况下,而我使用pyenv安装了多个版本,虽然通过pyenv global 设置了全局python版本,其他情况下python可以正常使用我设定的版本,但偏偏gdb会在python库路径的识别上出错,无法识别到准确的当前python版本对应的库,至少我再通过设置PYTHONHOME和PYTHONPATH两个路径无法解决该问题。stack上的评论说在卸载python、gdb并重新安装后能解决该问题,但可能由于配置文件卸载不干净,python无论是再装3.8还是3.9,gdb报错的sys.path始终是python38无法清理感觉。可以尝试通过彻底卸载并重新安装或者更改软链接地址来解决。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月21日
  • 已采纳回答 12月13日
  • 创建了问题 12月12日

悬赏问题

  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来