问题:当我们安装了anaconda3之后,会发现ibus-setup进不去。

原因:

是因为ibus-setup的python应该使用python2。

而当我们安装了anaconda3之后,调用python将默认使用python3(在linux的逻辑里,输入python默认是python2,输入python3才是python3)

ibus-setup的主程序需要python2的gi模块,而安装了anacondas所调用的python3将出现冲突

所以你可能看见这样的报错:

Traceback (most recent call last):
File "/usr/share/ibus/setup/main.py", line 34, in <module>
from gi import require_version as gi_require_version
ImportError: cannot import name 'require_version'

总之:就是傻逼的anaconda3把python默认版本瞎改改出问题了!

解决方案:

第一步:将anaconda3禁用掉

sudo chmod 000 /home/chenyansu/anaconda3/ (在此你应该使用你的目录)

第二步:尽情地设置ibus-setup

第三步:如果你还想用anconda3,再把权限改回来,当然这样做之后ibus-setup又瘫痪了。

sudo chmod 775 /home/chenyansu/anaconda3

补充:

1. 为什么不直接把anaconda3的胡乱修改PATH的愚蠢错误改回来?

答:不能,anaconda3有一个非常愚蠢的设定,那就是如果它在PATH里,它必须必然是第一位。

当然,我现在的做法是将anaconda3的PATH删掉了。删除PATH后,再在~/.baschrc中注释掉就好。

我还在bashrc中将anaconda3的目录设定为con=/home/chenyansu/anaconda3, 每次启动anaconda的程序我都这样$con/ipython(以ipython为例)

2. 理论上由于anaconda3而造成的python问题,都可以通过此方法拯救

linux- Fedora25 下 解决anacondas3 与ibus冲突问题的更多相关文章

  1. Linux系统下 解决Qt5无法连接MySQL数据库的方法

    Linux平台下解决Qt5连接mysql数据库的问题:输入sudo apt-get install libqt5sql5-mysql解决,这种方法只能解决Qt是用sudo apt-get instal ...

  2. linux系统下解决getch()输入数值不回显示

    在linux系统下开发C 程序却会遇到系统不支持conio.h头文件,无法使用getch()不回显函数.下面就演示如何构建函数实现数值输入不回显. #include <stdio.h> # ...

  3. Linux——多线程下解决生产消费者模型

    我们学习了操作系统,想必对生产消费者问题都不陌生.作为同步互斥问题的一个经典案例,生产消费者模型其实是解决实际问题的基础模型,解决很多的实际问题都会依赖于它.而此模型要解决最大的问题便是同步与互斥.而 ...

  4. Linux系统下 解决Qt5工程打不开的方法

    一.问题现象 打开Qt工程的时候,控制台报错:Could not find qmake configuration file default. 二.问题原因 我碰到这种问题的原因是我的Linux系统装 ...

  5. laravel 在linux环境下解决.htaccess无效和去除index.php

    LoadModule rewrite_module modules/mod_rewrite.so (去掉前面的#注释) AllowOverride All (根目录的配置下,确保设置成All) < ...

  6. [linux]centos7下解决yum install mysql-server没有可用包

    第一步:安装从网上下载文件的wget命令 [root@master ~]# yum -y install wget 第二步:下载mysql的repo源 [root@master ~]# wget ht ...

  7. linux系统下安装tomcat及配置

    一.下载TOMCAT压缩包 apache-tomcat-6.0.44-client.zip 或 apache-tomcat-7.0.69.tar.gz 点击进入官网:http://tomcat.apa ...

  8. Git命令行下解决冲突

    使用Git时,在pull.merge.rebase的过程中,经常会遇到conflict的情况. 遇到conflict时,以上处理过程会终端,并且命令行中显示(xxx|MERGING)的状态(Windo ...

  9. (收集)linux环境下乱码的解决方法

    **************************** 就是从数据库中取出来时,在存入linux的文件里时,在字符流时制定编码格式.代码如下: FileOutputStream fos=new Fi ...

随机推荐

  1. Rx操作符

    [Rx操作符] 1.Observable.from()方法,它接收一个集合作为输入,然后每次输出一个元素给subscriber: Observable.from("url1", & ...

  2. Using promises

    [Using promises] 过去,异步方法这样写: function successCallback(result) { console.log("It succeeded with ...

  3. MySQL driver for Node

    [MySQL driver for Node] 1.安装 2.一个示例 From this example, you can learn the following: Every method you ...

  4. Cacti日志时区问题

    cacti默认是以美国的时间为准的,监测的适合要纠正到UTC+8的时区. 打开vi /home/cacti/include/config.php 文件,在里面加入一行 date_default_tim ...

  5. Python基础之Python的变量、常量

    变量 看下面这个输出 print('整数达斯柯达敬爱的卡斯加大受打击啊') 变量:就是将运算的中间结果暂时存到内存中,以便后续代码调用 res = '整数达斯柯达敬爱的卡斯加大受打击啊') print ...

  6. 区分action, service和dao

    在这里,我们不仅要处理页面逻辑,还要做业务逻辑,还要做数据访问.比如说: public String addUser() { if(user == null) { return FAIL_NO_USE ...

  7. JTAG-测试数据寄存器

    1.问题:JTAG中的数据寄存器的结构 JTAG标准规定了两个必须的数据寄存器: 1.旁通寄存器 2.边界扫描寄存器(已经在可测性设计-扫描通路中介绍了) 可选的的寄存器有: 1.器件标示寄存器(32 ...

  8. linux 重定向命令详解(如1>/dev/null 2>&1)

    基础 0:表示标准输入stdin 1:表示标准输出stdout,系统默认为1,可省略(即1>/dev/null等价于>/dev/null) 2:表示标准错误stderr >:表示重定 ...

  9. H5入门

    1.基本骨架 <!DOCTYPE html> <html> <head><title>标题</title><meta charset= ...

  10. TZOJ 1513 Farm Tour(最小费用最大流)

    描述 When FJ's friends visit him on the farm, he likes to show them around. His farm comprises N (1 &l ...