Python3.7 + jupyter安装(CentOS6.5)
Python3.7 + jupyter安装(CentOS6.5)
方法一(anaconda):
- anaconda是一个开源的Python发行版本
- 包含conda,python等大量的科学包以及依赖
- 优点:开箱即用,无需自己解决兼容问题
- 缺点:比较庞大,安装包600M,解压出来3.5G
下载地址:https://www.anaconda.com/distribution/#download-section
- 下载安装脚本(600M)
- 执行交互式脚本,自定义安装目录
- 最后不要执行初始化文件,让它单独存放,以免干扰系统原生的python环境
#安装脚本
[root@app1 local]# ls -lh Anaconda3-2018.12-Linux-x86_64.sh
-rw-r--r-- 1 root root 653M Mar 5 15:55 Anaconda3-2018.12-Linux-x86_64.sh
#安装后的目录
[root@app1 local]# ll -h /data/anaconda3/
total 208K
drwxr-xr-x 4 root root 12K Mar 5 18:39 bin
drwxr-xr-x 2 root root 4.0K Mar 5 16:21 compiler_compat
drwxr-xr-x 2 root root 20K Mar 5 16:23 conda-meta
drwxr-xr-x 3 root root 4.0K Mar 5 16:22 doc
drwxr-xr-x 2 root root 4.0K Mar 5 16:23 envs
drwxr-xr-x 7 root root 4.0K Mar 5 16:23 etc
drwxr-xr-x 38 root root 12K Mar 5 16:23 include
drwxr-xr-x 23 root root 36K Mar 5 16:23 lib
drwxr-xr-x 4 root root 4.0K Mar 5 16:22 libexec
-rw-r--r-- 1 root root 5.7K Dec 20 13:45 LICENSE.txt
drwxr-xr-x 3 root root 4.0K Mar 5 16:21 man
drwxr-xr-x 65 root root 4.0K Mar 5 16:22 mkspecs
drwxr-xr-x 2 root root 4.0K Mar 5 16:22 phrasebooks
drwxr-xr-x 278 root root 36K Mar 5 16:20 pkgs
drwxr-xr-x 26 root root 4.0K Mar 5 16:22 plugins
drwxr-xr-x 25 root root 4.0K Mar 5 16:22 qml
drwxr-xr-x 2 root root 4.0K Mar 5 16:22 resources
drwxr-xr-x 2 root root 4.0K Mar 5 16:22 sbin
drwxr-xr-x 31 root root 4.0K Mar 5 16:23 share
drwxr-xr-x 3 root root 4.0K Mar 6 08:32 ssl
drwxr-xr-x 3 root root 12K Mar 5 16:22 translations
drwxr-xr-x 3 root root 4.0K Mar 5 16:22 var
-rw-r--r-- 1 root root 0 Mar 5 16:31 vscode_inst.py.log
drwxr-xr-x 3 root root 4.0K Mar 5 16:21 x86_64-conda_cos6-linux-gnu
#启动jupyter
/data/anaconda3/bin/jupyter notebook --ip=0.0.0.0 --port=8889 --allow-root --no-browser
方法二(源码安装Python3.7,pip3安装jupyter)
- 优点:轻量级安装,需要什么装什么,撇除多余的东西
- 缺点:需要自己解决依赖包和兼容问题
- 问题一:Python3.7已不支持openssl-1.0.1及以下版本,所以无法编译ssl模块,从而导致pip3无法使用
- 问题二:pip3安装jupyter时默认安装的tornado版本过高导致jupyter无法正常使用
- 以上问题是笔者碰到的主要问题,其余依赖较容易解决,在此不详述
- 官网下载最新版Python(目前是Python3.7.2)
- 解决普通依赖包
编译前的准备
yum -y install zlib* #解决编译zip报错
yum -y install readline-devel #解决python3无法使用ctrl+l清屏问题
yum -y install openssl-devel #解决安装后pip3无法使用ssl的问题
yum -y install libffi-devel #解决无法编译_ctypes模块问题
- 解决openssl问题
#系统本来的openssl包,这个版本已不被Python3.7支持,直接编译无法通过
[root@app1 local]# yum list installed | grep openssl
openssl.x86_64 1.0.1e-57.el6 @base
openssl-devel.x86_64 1.0.1e-57.el6 @base
- openssl和openssl-devel是什么关系 参考 https://blog.csdn.net/devalone/article/details/82459276
- 解决办法:源码安装被Python3.7支持的openssl包
下载地址:https://www.openssl.org/source/
[root@app1 local]# ls -lh openssl-1.0.2r.tar.gz
-rw-r--r-- 1 root root 5.2M Mar 5 20:57 openssl-1.0.2r.tar.gz
./config
make
make test
make install
#本次安装在这个目录
[root@app1 local]# ls -lh /usr/local/ssl
total 52K
drwxr-xr-x 2 root root 4.0K Mar 6 08:02 bin
drwxr-xr-x 2 root root 4.0K Mar 5 19:03 certs
drwxr-xr-x 3 root root 4.0K Mar 6 08:02 include
drwxr-xr-x 4 root root 4.0K Mar 6 08:34 lib
drwxr-xr-x 6 root root 4.0K Mar 6 08:01 man
drwxr-xr-x 2 root root 4.0K Mar 6 08:02 misc
-rw-r--r-- 1 root root 11K Mar 6 08:02 openssl.cnf
-rw-r--r-- 1 root root 11K Mar 5 19:03 openssl.cnf.dist
drwxr-xr-x 2 root root 4.0K Mar 5 19:03 private
- 或者安装libressl 参考 https://blog.csdn.net/devalone/article/details/82459276 (未尝试)
- 编译安装Python3.7
#编译前准备
vim /usr/local/Python-3.7.2/Modules/Setup #修改编译时的ssl配置
SSL=/usr/local/ssl #openssl安装目录
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto
#配置、编译、安装
./configure --prefix=/usr/local/ --with-openssl=/usr/local/ssl/
make
make install
- pip3安装jupyter
pip3 install --upgrade pip
pip3 install jupyter
- 启动jupyter
jupyter notebook --ip=0.0.0.0 --allow-root --no-browser
此时如果报错无法导入sqlite3,确保系统安装了sqlite,没有的话需要安装,然后重新编译Python3.7
[root@app1 ~]# yum list installed | grep sqlite
qt-sqlite.x86_64 1:4.6.2-26.el6_4 @anaconda-CentOS-201311272149.x86_64/6.5
sqlite.x86_64 3.6.20-1.el6_7.2 @base
sqlite-devel.x86_64 3.6.20-1.el6_7.2 @base
- 浏览器打开IP:8888,启用python3时发现无法连接服务,这就是tornado版本过高,使用pip3重装tornado即可
[root@app1 ~]# pip3 uninstall tornado
Uninstalling tornado-6.0.1:
Would remove:
/usr/local/lib/python3.7/site-packages/tornado-6.0.1-py3.7.egg-info
/usr/local/lib/python3.7/site-packages/tornado/*
Proceed (y/n)? y
Successfully uninstalled tornado-6.0.1
[root@app1 ~]# pip3 install tornado==5.1.1
Collecting tornado==5.1.1
Downloading https://files.pythonhosted.org/packages/e6/78/6e7b5af12c12bdf38ca9bfe863fcaf53dc10430a312d0324e76c1e5ca426/tornado-5.1.1.tar.gz (516kB)
100% |████████████████████████████████| 522kB 10.0MB/s
Installing collected packages: tornado
Running setup.py install for tornado ... done
Successfully installed tornado-5.1.1
Python3.7 + jupyter安装(CentOS6.5)的更多相关文章
- Centos6下Python3的编译安装
本文转载自 Centos6下Python3的编译安装 系统环境:CentOS 6.8-Minimal 安装Python依赖包: 1 [root@Python src]# yum install zli ...
- Jupyter 安装并配置工作路径[转]
1.通过python的pip方式安装jupyterpython和pip都安装好后,通过cmd进入命令提示窗口,找到python安装目录下的Script目录,例如我的是路径是:C:\Program Fi ...
- python之jupyter安装与使用
Jupyter Notebook 的本质是一个 Web 应用程序,便于创建和共享文学化程序文档,支持实时代码,数学方程,可视化和 markdown.用途包括:数据清理和转换,数值模拟,统计建模,机器学 ...
- jupyter 安装问题 building 'zmq.libzmq' extension error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools
1.用pip install jupyter 安装到一半就报错 错误提示: building 'zmq.libzmq' extension error: Microsoft Visual C++ 14 ...
- 虚拟机安装CentOS6.4
1 概述 虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的.运行在一个完全隔离环境中的完整计算机系统,运行在主机上,完全独立,虚拟机里面的所有操作不会影响主机,即使虚拟 ...
- python3 linux下安装
1.下载 https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz 2.安装 上传到linux服务器 #进入上传文件的目录 cd /app/pr ...
- 。U盘安装CentOS6.5
最近着手自学Linux,网上有很多CentOS的各种版本,但查阅到的教程基本都是关于CentOS6的,本着最新的版本并不一定是最适合的版本的原则,我选择安装CentOS6.5.安装系统稍微不注意就会出 ...
- VMware10 安装centos6.7 设置NAT模式
最近刚开始学Linux运维.我看的书是<跟阿铭学Linux>,视频教程里面使用NAT模式手动分配IP可以成功ping通网关,但是我照着视频一步一步操作却一直不成功,不知道是什么原因,昨天弄 ...
- 虚拟机安装 Centos6
1 虚拟机安装 Centos6 1.1 前期配置 New Virtual Machine———Typical(典型安装) 选择镜像文件. 设置文件名,用户名和密码. 设置系统在虚拟机软件的名称, 设置 ...
随机推荐
- 15 Top Paying IT Certifications In 2016: AWS Certified Solutions Architect Leads At $125K
Each of the five Amazon Web Services (AWS) certifications brings in an average salary of more than $ ...
- javascript 正则表达式的使用
1. 语法 有两种定义正则表达式的方式 字面量形式 var expression = /pattern/flags 引用 MDN 的解释: pattern:正则表达式的文本. flags:标志,可以是 ...
- 卸载CocoaPods
1. 移除pod组件 这条指令会告诉你Cocoapods组件装在哪里 : $ which pod 你可以手动移除这个组件 : $ sudo rm -rf <path> 2.移除 RubyG ...
- [python]pip 版本9.0.1升级到10.0.1故障解决办法
问题背景: 在做android自动化时使用到第三方库uiautomator时,提示要安装,但安装该uiautomator库时提示当前的pip版本偏低,需要安装10.0.1版本方可.但在升级到升级到该版 ...
- 快速数论变换(NTT)
刚学完FFT,干脆把NTT也学了算了 (一)预备知识 关于原根,这里说得蛮详细的百度百科 为什么使用原根呢?为什么原根可以替代\(\omega_{n}\)呢?想知道为什么就看here NTT用到的各种 ...
- Volley源码分析(五)Volley源码总结篇
volley关键的代码这里已经分析完了,下面梳理一下完整的Volley流程 Volley的使用从构造Request对象开始,Volley默认提供了四种request的实现,StringRequest, ...
- shiro实战系列(六)之Authorization(授权)
授权,又称作为访问控制,是对资源的访问管理的过程.换句话说,控制谁有权限在应用程序中做什么. 授权检查的例子是:该用户是否被允许访问这个网页,编辑此数据,查看此按钮,或打印到这台打印机?这些都是 决定 ...
- MFC单文档视图拆分窗口和相关链接
第一步:准备2个视图类(如CTViewOne, CTViewTwo) 第二步:在CMainFrame类的头文件中添加数据成员变量: //MainFrm.h protected: CSplitterWn ...
- C++面试题:list和vector有什么区别
C++面试题:list和vector有什么区别?考点:理解list和vector的区别出现频率:★★★★解析:vector和数组类似,它拥有一段连续的内存空间,并且起始地址不变,因此它能非常好的支持随 ...
- 20155317《网络对抗》Exp4 恶意代码分析
20155317<网络对抗>Exp4 恶意代码分析 基础问题回答 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用 ...