最近打算学一下tensorflow,发现tensorflow官方只支持和mac和linux,恰好之前在操作系统课上装了Ubuntu18.04的双系统,于是打算在Ubuntu捣鼓一下.没想到,linux上配环境各种bug,一路下来,头发都掉不少
在更新了python3.8后,发现Ubuntu上的gnome-terminal无法用快捷ctrl+alt+T打开了,右键点击也是一直转圈啥反应都没有.
只剩下桌面右键点击,选择终端这一个途径.
到了发现原因竟然是在将python3重定向为python3.8
即建立软链接后
ln -s /usr/local/python3/bin/python3.8 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3.8 /usr/bin/pip3
发生了问题
大家可以在xterm或其他可用终端输入gnome-terminal
听说可以按Ctrl+Alt+F1来进入命令模式
发生类似importerror的错误
错误显示无法导入_gi模块
折腾了一晚上我从网上找到几种解决方法,整理了一下在这里分享给大家.
第一种:修改文件
进入python3相应目录,看看里面的_gi_cairo.cpython-35m-x86_64-linux-g文件和_gi.cpython-35m-x86_64-linux-gnu.so文件需要重命名或复制一份为:_gi_cairo.cpython-36m-x86_64-linux-g和_gi.cpython-36m-x86_64-linux-gnu.so
cd /usr/lib/python3/dist-packages/gi/
sudo cp _gi.cpython-35m-x86_64-linux-gnu.so _gi.cpython-38m-x86_64-linux-gnu.so
sudo cp _gi_cairo.cpython-35m-x86_64-linux-gnu.so _gi_cairo.cpython-38m-x86_64-linux-gnu.so
这种方法,我试了一下没有解决问题.
第二种方法:修改gnome-terminal文件
就是将/usr/bin/gnome-terminal
修改其中的第一行
sudo vim /usr/bin/gnome-terminal
第一行: #!/usr/bin/python2 将3改为2:
#!/usr/bin/python3
我就是用这种方法解决的,也有人说这里改为python3.6
我是了也可以
第三种方法退而求其次
如果以上方法都不行的话就只能重新将python3指回python3.6了.
sudo rm /usr/bin/python3
sudo ln -s python3.6 /usr/bin/python3
或者尝试一下以下指令
sudo update-alternatives --config python3
linux上的bug真是奇葩而复杂.
希望能早日变强.
参考: