解决ubuntu22.04 gnome-terminal 无法启动的问题

22.04下面默认的python 版本是3.10. 如果你安装了3.8或其它版本,尽量不要去ln -s python3.8 python3修改默认python3版本,不然Terminal会打不开。猜测Terminal可能用到了python的_gi这个库。

可以在xterm或putty远程连上,输入 sudo gnome-terminal

显示如下:

bash 复制代码
sudo gnome-terminal
Traceback (most recent call last):
  File "/usr/bin/gnome-terminal", line 9, in <module>
    from gi.repository import GLib, Gio
  File "/usr/lib/python3/dist-packages/gi/__init__.py", line 40, in <module>
    from . import _gi
ImportError: cannot import name '_gi' from partially initialized module 'gi' (most likely due to a circular import) (/usr/lib/python3/dist-packages/gi/__init__.py)

虽然不知道_gi库是干什么的,但是版本不匹配,当然会有问题。

bash 复制代码
sudo vim /usr/bin/gnome-terminal

编辑可看到第一行内容是

bash 复制代码
#!/usr/bin/python3

所以说,轻易不要乱改默认的python3版本。

你要么把python指向3.8,要么就用python3.8来跑你的程序。

补充一下:

如果你实在需要把python3指向python3.8,那么你可以修改/usr/bin/gnome-terminal的第一行,把python3改为python3.10也行。

相关推荐
尤老师FPGA3 小时前
petalinux修改设备树添加vdma生成linux系统
android·linux·运维
yxy___3 小时前
达梦分布式集群DPC_重做副本-操作指南(DEM)_yxy
运维·分布式
JHC0000003 小时前
基于Ollama,Milvus构建的建议知识检索系统
人工智能·python·milvus
月山知了3 小时前
linux kernel component子系统:基于rk3588 Android 14 kernel-6.1 display-subsystem代码分析
android·linux·运维
_Emma_3 小时前
【QCOM】 Linux下qcom venus 编解码驱动框架分析
linux·驱动开发·视频编解码
mOok ONSC3 小时前
SpringBoot项目中读取resource目录下的文件(六种方法)
spring boot·python·pycharm
星辰徐哥3 小时前
大模型工程化部署:Docker Compose批量部署
运维·docker·容器
SEO-狼术3 小时前
Support Network Diagnostics in .NET
运维·服务器·网络
AI周红伟4 小时前
AI自动盯盘与定时行情分析:OpenClaw股票辅助Agent集成完整使用指南-周红伟
运维·服务器·人工智能·音视频·火山引擎
GIS兵墩墩4 小时前
postgis--PostgreSQL16及其plpython3u扩展
python·postgis