centos7中安装python3,配置python虚拟环境,

####

centos7中安装python3

还是先安装依赖吧

yum -y groupinstall "Development tools"
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
yum install -y libffi-devel zlib1g-dev
yum install zlib* -y

 

第一步:

wget https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tar.xz

wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tar.xz

因为这一步会报错,wget没有安装

CentOS wget是一个从网络上自动下载文件的自由工具。所以先安装这个,

 

第二步,解压

tar -xvJf  Python-3.7.2.tar.xz

 

第三步,创建编译安装目录

mkdir /usr/local/python3 

 

第四步,安装---编译时间较长请耐心等待

cd Python-3.7.2
./configure --prefix=/usr/local/python3 --enable-optimizations --with-ssl
#第一个指定安装的路径,不指定的话,安装过程中可能软件所需要的文件复制到其他不同目录,删除软件很不方便,复制软件也不方便.
#第二个可以提高python10%-20%代码运行速度.
#第三个是为了安装pip需要用到ssl,后面报错会有提到.
make && make install

 

这一步执行configure的时候会报错,

configure: error: no acceptable C compiler found in $PATH 问题解决

解决方法:yum install gcc

 

报错2:zipimport.ZipImportError: can't decompress data; zlib not available

yum -y install zlib1g-dev

 

错误3.ModuleNotFoundError: No module named '_ctypes'

需要安装依赖

yum -y install libffi-devel

 

第五步.创建软链接
ln -s /usr/local/python3/bin/python3 /usr/local/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/local/bin/pip3

 


第六步.验证是否成功
python3 -V
pip3 -V

 

第七步:在centos中使用python3.7或以上版本,进行pip install 命令容易报错

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Could not fetch URL https:*******: There was a problem confirming the ssl certificate:
Can't connect to HTTPS URL because the SSL module is not available. - skipping
在./configure过程中,如果没有加上–with-ssl参数时,默认安装的软件涉及到ssl的功能不可用,刚好pip3过程需要ssl模块,而由于没有指定,所以该功能不可用。解决办法是重新对python3.6进行编译安装,用一下过程来实现编译安装:
cd Python-3.7.2
./configure --with-ssl
make && make install
即可正常使用pip安装.

 

#####

安装虚拟环境,

第一步:安装包

pip3 install virtualenv

pip3 install virtualenvwrapper

 

慢的话临时加速:

pip install 包名 -i https://pypi.tuna.tsinghua.edu.cn/simple

 

第二步, 创建一个文件夹,用于存放所有的虚拟环境:一般建议在home目录下(加.是隐形目录,可能不能直接看到)

例:mkdir /home/.virtualenvs

 

 

第三步,查找virtualenvwrapper所在的路径(记得加.sh要不然查到出来的路径不正确)

whereis virtualenvwrapper.sh或 find / -name virtualenvwrapper.sh

 

eg:

/usr/local/python3/bin/virtualenvwrapper.sh 

 

第四步:最重要的一步,也就是编辑 .bashrc配置文件,所在路径

yum install vim

vim /root/.bashrc
添加以下三句:
export WORKON_HOME=路径/.virtualenvs(绝对路径)

export VIRTUALENVWRAPPER_PYTHON=python的路径

source virtualenvwrapper.sh的存放路径(就是刚刚我们找的)
完成后保存并退出。

以我的为例:

export WORKON_HOME=/home/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/local/python3/bin/python3
source /usr/local/python3/bin/virtualenvwrapper.sh 

 

第五步:source /root/.bashrc   (激活更新配置)

 

第六步:创建虚拟环境报错,

ERROR: virtualenvwrapper could not find /root/.local/lib/python3.7/site-packages/virtualenv in your path

find / -name virtualenv

 

增加一个配置,

export WORKON_HOME=/root/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/python3/bin/virtualenv
source /usr/local/bin/virtualenvwrapper.sh

 

另外可能需要对这个进行软连接,连接到和virtualenvwrapper.sh是一个路径,/usr/local/bin

 

具体操作还是需要搜索一下,过程忘记了,

####

虚拟环境的使用

 

一、创建跟退出
1.创建新虚拟环境:mkvirtualenv 名称
例:mkvirtualenv py3_dev

 

2.退出环境:deactivate

 

3.如果想指定一个python3来运行的虚拟环境
mkvirtualenv 虚拟环境名 -p python路径
例:mkvirtualenv 虚拟环境名 -p /usr/bin/python3

 

4,快速激活虚拟环境
workon 虚拟环境名称
例:workon aw_venv

 

5,删除虚拟环境

rmvirtualenv aw_venv

#####

posted @ 2021-09-22 21:16  技术改变命运Andy  阅读(731)  评论(0编辑  收藏  举报