Saya baru saja mencoba menginstal python 3.6 pada sistem Ubuntu 16.04 saya, dan sekarang saya tidak dapat menjalankan terminal dari peluncur atau dari Ctrl + Alt + T. Saya mencoba lari gnome-terminal
dari XTerm dan mendapat pesan berikut:
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 42, in <module>
from . import _gi
ImportError: cannot import name '_gi'
Error in sys.excepthook:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 63, in apport_excepthook
from apport.fileutils import likely_packaged, get_recent_crashes
File "/usr/lib/python3/dist-packages/apport/__init__.py", line 5, in <module>
from apport.report import Report
File "/usr/lib/python3/dist-packages/apport/report.py", line 30, in <module>
import apport.fileutils
File "/usr/lib/python3/dist-packages/apport/fileutils.py", line 23, in <module>
from apport.packaging_impl import impl as packaging
File "/usr/lib/python3/dist-packages/apport/packaging_impl.py", line 23, in <module>
import apt
File "/usr/lib/python3/dist-packages/apt/__init__.py", line 23, in <module>
import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'
Original exception was:
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 42, in <module>
from . import _gi
ImportError: cannot import name '_gi'
Bagaimana saya bisa memperbaiki kesalahan ini?
Perlu juga dicatat bahwa:
gnome-terminal
File saya sekarang adalah skrip python.- The
gnome-terminal.real
File akan membuka terminal seperti yang diharapkan. python3.5 gnome-terminal
akan membuka terminal seperti yang diharapkan.
16.04
gnome
python
gnome-terminal
bengdahl
sumber
sumber
python3-apt
paket; ada bug Launchpad yang terbuka di sini ./usr/bin
. Mungkin ada alternatif yang lebih baik. Jika Anda tahu ada, silakan tulis jawaban sendiri.Anda tidak perlu mengarahkan Python3 ke python3.5, cukup menjalankan perintah:
sumber
Perubahan yang benar dari python3 default dilakukan melalui:
Meskipun menyalin
_gi_cairo.cpython-35m-x86_64-linux-gnu.so
lebih dari python3.5 lebih dari python3.6 dapat menyelesaikan masalah ini, tetapi akan merusak konsistensi perpustakaan Anda. Dan harus dihindari.sumber
Saya tahu ini adalah pertanyaan lama tetapi bagi mereka yang mencari cara selain mengubah python3 ke python 3.5 secara global, Anda dapat mengubah baris pertama dari
/usr/bin/gnome-terminal
dari#! /usr/bin/python3
menjadi#! /usr/bin/python3.5
.Catatan: Saya tidak memiliki python 3.5 di komputer saya tetapi
import gi
bekerja di python 3.6, jadi gunakan 3.6 daripada 3.5.sumber
gnome-terminal
satu-satunya hal yang rusak atau adagnome-*
hal lain yang harus saya ubah juga?