ubuntu14.04环境下spyder的安装
在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-pyqt5python-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的安装的更多相关文章
- disconf系列【1】——百度disconf在ubuntu14.04环境下的安装
disconf官网给出的安装文档默认读者已经非常熟练本文1.2章节给出的依赖软件的原理及使用方法,且官网默认安装环境为linux(windows安装方法只字未提).同时,官网对很多重要的细节语焉不详, ...
- ubuntu14.04环境下利用docker搭建solrCloud集群
在Ubuntu14.04操作系统的宿主机中,安装docker17.06.3,将宿主机的操作系统制作成docker基础镜像,之后使用自制的基础镜像在docker中启动3个容器,分配固定IP,再在3个容器 ...
- Ubuntu14.04环境下配置TFTP服务器
<<<<<<<<<<<<<<<<<<<<<<<<< ...
- Ubuntu14.04环境下Qt5.5以上版本无法输入中文的解决教程
1.前言 由于Qt5.4之后对之前的Qt5版本不再二进制兼容,所以网上很多简单的旧的办法已经失效了,所以本教程的办法是重新编译fcitx-qt5,生成最新的libfcitxplatforminputc ...
- Suricata在ubuntu14.04环境下安装
简介 Suricata是一款高性能的网络IDS.IPS和网络安全监控引擎.它是由the Open Information Security Foundation开发,是一款开源的系统,现在的NIDS领 ...
- Ubuntu14.04环境下java web运行环境搭建
1.jdk安装 将下载好的安装包上传至/home目录解压 tar -zxvf jdk-8u71-linux-x64.tar.gz 执行 vim /etc/profile 在末尾添加java环境变量(J ...
- Ubuntu14.04环境下Samba报错排错过程
排错的方法和思路非常重要,日志非常非常非常非常重要!!! 搭建好Samba之后,windos访问一直下面这个错误,然后傻逼一样一直百度百度,一弄又是几天,但是经过自己一步一步的排错,弄成功之后,那心情 ...
- Ubuntu18.04环境下melodic安装gmapping
Ubuntu18.04 环境下melodic中很多包没有提供sudo apt install的安装方式,需要通过源代码安装,安装方法如下: 1.先安装依赖库: sudo apt--dev sudo a ...
- 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 ...
随机推荐
- BZOJ 4614 【Wf2016】 Oil
题目链接:Oil 感觉同时几线作战有点吃不消啊-- 这道题有一个显然的结论,那就是最优的直线一定过某条线段的端点. 仔细想想很有道理.如果最终的直线没有过线段的端点的话,那么这条直线就一定可以平移,直 ...
- C++类继承关系视图的自动生成
原创文章,转载请注明出处. 工欲善其事,必先利其器.阅读大型C++工程项目,如果有一些自动化的分析工具支持,学习的效率将大大提升.在前文中介绍了Source Insight在Linux下的安装方法,本 ...
- python 第一章学习课程
http://www.runoob.com/python/python-dictionary.html
- [转]ExtJs基础--Html DOM、Ext Element及Component三者之间的区别
要学习及应用好Ext框架,必须需要理解Html DOM.Ext Element及Component三者之间的区别. 每一个HTML页面都有一个层次分明的DOM树模型,浏览器中的所有内容都有相应的DOM ...
- 篇三:MySQL分页
分页:物理分页.逻辑分页 物理分页:SQL语句中直接使用limit 逻辑分页:先查询出所有满足条件的数据,然后在Java中截取需要的行 优缺点: 1.逻辑分页翻页速度快,第一次查询出来的数据会有缓存, ...
- Newtonsoft.Json 序列化和反序列化 时间格式【转】
1.JSON序列化 string JsonStr= JsonConvert.SerializeObject(Entity); eg: A a=new A(); a.Name="Elain ...
- XMind共享未保存的思维导图的教程
我们在XMind 6对导图进行局域网共享时,一般都是对XMind文件先进行保存再共享,那样是忘记保存呢,该如何共享.局域网共享功能是XMind 6特有的功能之一,自是较为完善,性能强大的功能,当然有办 ...
- JavaScript事件详解-jQuery的事件实现(三)
正文 本文所涉及到的jQuery版本是3.1.1,可以在压缩包中找到event模块.该篇算是阅读笔记,jQuery代码太长.... Dean Edward的addEvent.js 相对于zepto的e ...
- bzoj 3676 回文串 manachar+hash
考虑每个回文串,它一定是它中心字母的最长回文串两侧去掉同样数量的字符后的一个子串. 所以我们可以用manachar求出每一位的回文半径,放到哈希表里并标记出它的下一个子串. 最后拓扑排序递推就行了.. ...
- Django models Form model_form 关系及区别
Django models Form model_form