CentOS下安装python3环境及pypy环境
安装前基础环境
1. win7虚拟机CentOS7.6系统
2. 网络环境通过NAT方式
3. 已经配置到yum仓库并系统自带有python2.7
安装前准备
1. python3.6.5源码包:https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz(可以在window下载,也可以在linux通过wget下载)
2. pypy3二进制包:https://bitbucket.org/pypy/pypy/downloads/pypy3.6-v7.1.1-linux64.tar.bz2
开始安装
源码包安装python3.6.5
安装所需依赖包
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel gcc
解压源码包并进入
tar xf Python-3.6.5
cd Python-3.6.5
配置安装参数
./configure --prefix=/usr/local/python3 enable-optimizations --with-ssl
编译并安装
make &&make install
安装pypy
方式一:通过yum安装pypy
rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
yum -y install pypy-libs pypy pypy-devel
pypy rpm下载地址:http://pkgs.org/search/?keyword=pypy
方式二:通过可移植二进制文件安装pypy
文件地址:https://github.com/squeaky-pl/portable-pypy
下载解压运行即可
tar xf PyPy3.6
方式三:通过官方的二进制文件安装pypy
提示:使用时会警告缺少库文件,难解决
文件地址:https://bitbucket.org/pypy/pypy/downloads/pypy3.6-v7.1.1-linux64.tar.bz2
基本配置
添加软连接
ln -s /usr/local/python3/bin/python3 /usr/bin/python
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
配置环境变量
vim ~/.bashrc
export PATH=$PATH:/usr/local/python3/bin
export PATH=$PATH:/root/pypy3.6-v7.1.1-linux64/bin
因为yum是依赖python的,所以这里我们修改了默认的python,就要要修改yum,让其运行指向旧的版本
vim /usr/bin/yum
修改#!/usr/bin/python 为 #!/usr/bin/python2
vim /usr/libexec/urlgrabber-ext-down
vim /usr/bin/yum-config-manager
同上
安装virtualenv工具
pip3 install virtualenv
指定pypy作为解释器创建虚拟环境
virtualenv -p /root/pypy3.6-v7.1.1-linux64/bin/pypy3 mypypy3
激活虚拟环境
source mypypy3/bin/activate
获取并安装pip
wget https://bootstrap.pypa.io/get-pip.py
pypy get-pip.py
更换pip镜像源
(1)阿里云 http://mirrors.aliyun.com/pypi/simple/
(2)豆瓣http://pypi.douban.com/simple/
(3)清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
(4)中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/
(5)华中科技大学http://pypi.hustunique.com/
方法1:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ flask --trusted-host pypi.tuna.tsinghua.edu.cn
方法2:
《linux》中在~/.pip/pip.conf文件中添加如下内容(若未创建则创建文件和文件夹)
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host = https://pypi.tuna.tsinghua.edu.cn
《window》中在c:\\user\用户名\pip\pip.ini中添加同上内容
python安装常见问题
1. configure: error: no acceptable C compiler found in $PATH
解决:yum install -y gcc
2. zipimport.ZipImportError: can’t decompress data
解决:安装zlib zlib-devel
3. Running virtualenv with interpreter /root/pypy3.6-v7.1.1-linux64/bin/pypy3
/root/pypy3.6-v7.1.1-linux64/bin/pypy3: error while loading shared libraries: libbz2.so.1.0: cannot open shared object file: No such file or directory
解决:安装yum install bzip2-libs,如果已经存在,搜索find / -name libbz2.so的位置,创建一个软链接连接libbz2.so.1.0.6
ln -s /usr/lib64/libbz2.so.1.0.6 /usr/lib64/libbz2.so.1.0
4. /root/pypy3.6-v7.1.1-linux64/lib-python/3/hashlib.py:172: RuntimeWarning: The _hashlib module is not available, falling back to a much slower implementation (libcrypto.so.1.0.0: cannot open shared object file: No such file or directory)
RuntimeWarning)
解决:同上,安装yum install libssh,创建libcrypto.so.1.0.0软链接指向/usr/lib64/下的libcrypto.so.1.0.0文件
5. ./bin/pip3 -V
/root/pypy3.6-v7.1.1-linux64/lib-python/3/hashlib.py:172: RuntimeWarning: The _hashlib module is not available, falling back to a much slower implementation (libssl.so.1.0.0: cannot open shared object file: No such file or directory)
RuntimeWarning)
解决:同上

CentOS下安装python3环境及pypy环境的更多相关文章
- CentOS下安装Python3
目录 CentOS下安装Python3 下载 解压 配置 gcc sudo权限 vim 编译 安装 添加软链接 pip安装出错,找不到SSL 安装virtualenv和virtualenvwrappe ...
- centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'
centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'的解决办法 3.7版本需要一个新的包libffi-de ...
- centos下安装python3.6.2
一.下载 官网地址:https://www.python.org/downloads/source/ 我下载的是最新的3.6.2rc版本 # cd /opt/ wget https://www.pyt ...
- CentOS下安装Python3.4
系统环境:CentOS 7.2 CentOS7安装Python3.4 ,让Python2和3共存 编译需要的一些包: yum -y groupinstall "Development too ...
- CentOS下安装python3.x版本
现在python都到了3.x版本,但是centos中自带的python仍然是2.7版本的,所以想把python换成3.x版本的. 但是这个地方有个坑,你要是直接编译安装了python3.x之后,估计你 ...
- centos下安装redis/mysql等基础环境
1.修改语言 阿里云的ECS默认语言是:en_US.UTF-8,需要改成zh_CN.UTF-8 修改方法:vim /etc/locale.conf,然后重启. 查看方法:echo $LANG 2.安装 ...
- 关于在centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'的解决办法
3.7版本需要一个新的包libffi-devel,安装此包之后再次进行编译安装即可. #yum install libffi-devel -y#make install若在安装前移除了/usr/bin ...
- 【转载】关于在centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'的解决办法
3.7版本需要一个新的包libffi-devel,安装此包之后再次进行编译安装即可. #yum install libffi-devel -y #make install 原文:https://blo ...
- centos 下安装python3.6.2
具体详情: http://www.cnblogs.com/vurtne-lu/p/7068521.html
随机推荐
- (Java实现) 昆虫繁殖
昆虫繁殖 时间限制: 1 Sec 内存限制: 128 MB 提交: 25 解决: 16 [提交][状态][讨论版][命题人:quanxing] 题目描述 科学家在热带森林中发现了一种特殊的昆虫,这种昆 ...
- Java实现 LeetCode 498 对角线遍历
498. 对角线遍历 给定一个含有 M x N 个元素的矩阵(M 行,N 列),请以对角线遍历的顺序返回这个矩阵中的所有元素,对角线遍历如下图所示. 示例: 输入: [ [ 1, 2, 3 ], [ ...
- Java实现 LeetCode 371 两整数之和
371. 两整数之和 不使用运算符 + 和 - ,计算两整数 a .b 之和. 示例 1: 输入: a = 1, b = 2 输出: 3 示例 2: 输入: ...
- Java实现LeetCode_0035_SearchInsertPosition
package javaLeetCode.primary; public class SearchInsertPosition_35 { public static void main(String[ ...
- java实现 洛谷 P1017 进制转换
import java.util.Scanner; public class Main { private static Scanner cin; public static void main(St ...
- swagger--Failed to load API definition.
打开 http://localhost:5000/swagger/v1/swagger.json 提示错误 An unhandled exception occurred while processi ...
- zabbix 监控cpu 温度
Zabbix监控Linux主机CPU温度 一.客户端 1.客户Linux主机安装Im_sensors [root@localhost ~]# yum install -y lm-sensors-y ...
- js防抖函数
一.什么是函数防抖 概念:函数防抖(debounce),就是指触发事件后,在 n 秒内函数只能执行一次,如果触发事件后在 n 秒内又触发了事件,则会重新计算函数延执行时间. 举个栗子,坐电梯的时候,如 ...
- css布局相关:涉及到常见页面样式难点
一.display:table用法 Table:display:tableBody:table-row-group;Tr: table-row;Td: table-cell https://www.c ...
- 线程安全与synchronized
线程安全性与synchronized 线程安全:多线程访问某个类时,这个类始终都能表现出正确的行为,这个类就是线程安全的. 简单的说,就是多线程执行的结果与单线程执行的结果始终一致,不会因为多线程的执 ...