在ubuntu14.04系统中,默认在/usr/lib目录下安装了python2.7.6和python3.4.3,在该环境下安装spyder,然后使其链接到python3.4.3。

首先安装为python3安装模块下载工具pip3,然后安装spyder的依赖包PyQt5和sphinx。刚开始的时候直接安装了PyQt4,然后会报错,无法找到QT binding。

1,安装pip3

参考:https://ft.wupo.info/pip3-python3-install-module/

sudo apt-get install python3-setuptools
sudo easy_install3 pip

安装完成pip3之后,就开始安装spyder。

2,安装spyder

参考:http://stackoverflow.com/questions/28518830/install-spyder-for-python3-4-ubuntu

但是这个链接里面的安装是python-qt4和安装后关联的是python2,所以需要我们需要的版本是pyqt5,所以安装python3-pyqt5,但该命令行只安装了pyqt5的主要模块,但在运行spyder的时候需要其他模块,所以将其他模块也进行安装

sudo apt-get install python3-pyqt*

sudo apt-get install python3-pyqt5 python-sphinx
sudo apt-get install python3-pyqt*

sudo pip3 install spyder

3,一些问题

(1)在安装spyder过程中出现以下问题:

error: command 'i686-linux-gnu-gcc' failed with exit status 

参考http://blog.csdn.net/niyingxunzong/article/details/13094875

在终端输入:

sudo apt-get install python-dev

问题就解决了。

(2)输入spyder打开软件的时候,出现

pkg_resources.ContextualVersionConflict: (six 1.5. (/usr/lib/python3/dist-packages), Requirement.parse('six>=1.9.0'), {'prompt-toolkit'})

问题在于系统的six模块是1.5.2版本的,而运行spyder需要1.9.0版本,对six进行升级即可。

sudo pip3 install -U six

(3)关于PyQt版本的问题

在安装的过程中,刚开始安装的是pyqt4的版本,此时在启动spyder出现错误,无法找到pyside,然后在处理该错误时又出现了无法找到QT链接的问题,这个问题的关键在于pyqt的版本问题,在python3.4的模块的安装目录下,即/usr/local/lib/python3.4/dist-packages/qtpy中可以找到出错的文件__init__.py,在该文件中可以看到说明

**QtPy** is a shim over the various Python Qt bindings. It is used to write
Qt binding indenpendent libraries or applications. The shim will automatically select the first available API (PyQt5, PyQt4 and
finally PySide). You can force the use of one specific bindings (e.g. if your application is
using one specific bindings and you need to use library that use QtPy) by
setting up the ``QT_API`` environment variable. PyQt5
===== For PyQt5, you don't have to set anything as it will be used automatically:: >>> from qtpy import QtGui, QtWidgets, QtCore
>>> print(QtWidgets.QWidget) PyQt4
===== Set the ``QT_API`` environment variable to 'pyqt' before importing any python
package:: >>> import os
>>> os.environ['QT_API'] = 'pyqt'
>>> from qtpy import QtGui, QtWidgets, QtCore
>>> print(QtWidgets.QWidget) PySide
====== Set the QT_API environment variable to 'pyside' before importing other
packages:: >>> import os
>>> os.environ['QT_API'] = 'pyside'
>>> from qtpy import QtGui, QtWidgets, QtCore
>>> print(QtWidgets.QWidget) """

QtPy主要是选择一个合适的QT binding,包括PyQt5,PyQt4和PySide,默认的是PyQt5,但是安装的版本是PyQt4,所以启动spyder会出错,上面的提示可以设置QT_API这个环境变量来选择版本,但是试验过之后仍然无法启动spyder,最后安装了PyQt5才解决该问题。

(4)python模块安装路径问题

目前有两个

usr/local/lib/python3.4/dist-packages/和usr/lib/python3/dist-packages/,这两个对应的都是python3模块的安装路径,模块安装方法有:

a,sudo apt-get install + 模块名

b,sudo pip3 install + 模块名

ubuntu14.04环境下spyder的安装的更多相关文章

  1. disconf系列【1】——百度disconf在ubuntu14.04环境下的安装

    disconf官网给出的安装文档默认读者已经非常熟练本文1.2章节给出的依赖软件的原理及使用方法,且官网默认安装环境为linux(windows安装方法只字未提).同时,官网对很多重要的细节语焉不详, ...

  2. ubuntu14.04环境下利用docker搭建solrCloud集群

    在Ubuntu14.04操作系统的宿主机中,安装docker17.06.3,将宿主机的操作系统制作成docker基础镜像,之后使用自制的基础镜像在docker中启动3个容器,分配固定IP,再在3个容器 ...

  3. Ubuntu14.04环境下配置TFTP服务器

    <<<<<<<<<<<<<<<<<<<<<<<<< ...

  4. Ubuntu14.04环境下Qt5.5以上版本无法输入中文的解决教程

    1.前言 由于Qt5.4之后对之前的Qt5版本不再二进制兼容,所以网上很多简单的旧的办法已经失效了,所以本教程的办法是重新编译fcitx-qt5,生成最新的libfcitxplatforminputc ...

  5. Suricata在ubuntu14.04环境下安装

    简介 Suricata是一款高性能的网络IDS.IPS和网络安全监控引擎.它是由the Open Information Security Foundation开发,是一款开源的系统,现在的NIDS领 ...

  6. Ubuntu14.04环境下java web运行环境搭建

    1.jdk安装 将下载好的安装包上传至/home目录解压 tar -zxvf jdk-8u71-linux-x64.tar.gz 执行 vim /etc/profile 在末尾添加java环境变量(J ...

  7. Ubuntu14.04环境下Samba报错排错过程

    排错的方法和思路非常重要,日志非常非常非常非常重要!!! 搭建好Samba之后,windos访问一直下面这个错误,然后傻逼一样一直百度百度,一弄又是几天,但是经过自己一步一步的排错,弄成功之后,那心情 ...

  8. Ubuntu18.04环境下melodic安装gmapping

    Ubuntu18.04 环境下melodic中很多包没有提供sudo apt install的安装方式,需要通过源代码安装,安装方法如下: 1.先安装依赖库: sudo apt--dev sudo a ...

  9. Ubuntu14.04用apt在线/离线安装CDH5.1.2[Apache Hadoop 2.3.0]

    目录 [TOC] 1.CDH介绍 1.1.什么是CDH和CM? CDH一个对Apache Hadoop的集成环境的封装,可以使用Cloudera Manager进行自动化安装. Cloudera-Ma ...

随机推荐

  1. java.lang.OutOfMemoryError: PermGen space及其解决方法

    PermGen space的全称是Permanent Generation space,是指内存的永久保存区域OutOfMemoryError: PermGen space从表面上看就是内存益出,解决 ...

  2. 【repost】js 常见错误类型

    1)SyntaxError SyntaxError是解析代码时发生的语法错误 // 变量名错误  var 1a;  // 缺少括号  console.log 'hello'); (2)Referenc ...

  3. dll导入导出宏定义,出现“不允许 dllimport 函数 的定义”的问题分析

    建立dll项目后,在头文件中,定义API宏 #ifndef API_S_H #define API_S_H ...... #ifndef DLL_S_20160424 #define API _dec ...

  4. [LeetCode] Design Twitter 设计推特

    Design a simplified version of Twitter where users can post tweets, follow/unfollow another user and ...

  5. redis学习笔记

    Redis 命令 Redis 命令用于在 redis 服务上执行操作. 要在 redis 服务上执行命令需要一个 redis 客户端.Redis 客户端在我们之前下载的的 redis 的安装包中. 语 ...

  6. 利用StringEscapeUtils对字符串进行各种转义与反转义(Java)

    apache工具包common-lang中有一个很有用的处理字符串的工具类,其中之一就是StringEscapeUtils,这个工具类是在2.3版本以上加上的去的,利用它能很方便的进行html,xml ...

  7. UICollectionView中使用 UICollectionViewFlowLayout进行布局(模仿苹果相册)

    现在都知道,在初始化UICollectionView的时候,必须要传入一Layout对象,进行布局管理.这也是collectionview和tableview的明显区别,通过collectionvie ...

  8. x509数字证书导入-然后删除自身

    这种程序的使用场景,需要给客户一个证书,但不能把证书直接给他让他安装,程序中需要用到给客户的私钥,但又不允许客户将这个证书再去授权给其它人. 重点并不是代码,是如何对用户隐藏需要添加的资源 ,以文本为 ...

  9. CentOS 7 安装 配置 MySQL

    第一部分:CentOS 7安装MySQL 5.7 1.下载YUM库 shell > wget http://dev.mysql.com/get/mysql57-community-release ...

  10. wireshark lua脚本

    1.目的:解析rssp2协议   2.如何使用wireshark lua插件 将编写的(假设为rssp2.lua)lua文本,放入wireshark 安装目录下,放哪里都行只要dofile添加了路径. ...