ContOS7编译安装python3,配置虚拟环境
Python36编译安装
一,下载python源码包
网址:https://www.python.org/downloads/release/python-367/
# 软件包下载到/opt目录 cd /opt # 下载源码包到/opt wget https://www.python.org/ftp/python/3.6.7/Python-3.6.7.tgz
二,下载python3编译的依赖包(非常重要)
注意: 因为是编译安装,安装过后会缺少一些依赖包,运行python时会报缺少依赖的错误,然后又得重装, 所以这步很重要(我替你们踩过的坑)。
直接复制下面代码运行:
yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y
三,解压缩源码包
tar -xvf Python-3.6.7.tgz # 再进入源码包文件夹 cd Python-3.6.7
四,编译且安装
# 先释放编译文件 Makefile, 也就是指定安装目录 ./configure --prefix=/opt/python36/ # 再编译安装, 此步才会最终生成 /opt/python36/ make install # 这步在 Python-3.6.2 文件夹里面进行, 需等数秒
此时就就已经安装好了~
但是默认是没有环境变量的, 还需要自己配置~
五,配置环境变量
先查看以下你的环境变量
# 查看你系统的环境变量 echo $PATH
添加python3到环境变量
# 在/etc/profile最后一行添加 export PATH=$PATH:/opt/python36/bin # 然后读取配置文件/etc/profile source /etc/profile
现在你已经安装好python3了,并且直接输入python3可以进入python解释器了, 需要注意的是python3安装pip包是 pip3 install 包名 安装的
虚拟环境 virtualenvwrapper
虚拟环境只是对解释器的一个虚拟分身,不影响操作系统。作用是为了在一个python解释器中同时运行多个不同版本的Django和Flask项目
虚拟环境的的工具还有(virtualenv),当然比起virtualenv,virtualenvwrapper更方便管理,咱们直接学这个吧
一,安装
如果是按照上面的方法安装的python, 则需要先升级pip工具
pip3 install --upgrade pip
安装virtualenv
pip3 install virtualenv
二,配置
# 设置linux的用户个人配置文件~/.bashrc vim ~/.bashrc # 然后输入i进入编辑模式,在文件最下面复制如下代码 WORKON_HOME=~/Envs #设置virtualenv的统一管理目录,以后自动下载的虚拟环境,全都放这了 VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages' #添加virtualenvwrapper的参数,生成干净隔绝的环境 VIRTUALENVWRAPPER_PYTHON=/opt/python36/bin/python3 #指定python解释器的本体 source /opt/python36/bin/virtualenvwrapper.sh #执行virtualenvwrapper安装脚本 # 最后 按下Esc键进入编辑模式, 再输入 :wq! 保存并强制退出
注意:你还要 退出会话,重新登录才生效,且每次登录的时候,就自动加载virtualenvwrapper工具
三,基本使用virtualenvwrapper
# 创建一个虚拟环境: mkvirtualenv my_django115 # 这会在 ~/Envs 中创建 my_django115 文件夹。 # 在虚拟环境上工作:激活虚拟环境my_django115 workon my_django115 # 再创建一个新的虚拟环境 mkvirtualenv my_django2 # virtualenvwrapper 提供环境名字的tab补全功能。 # 当有很多环境, 并且很难记住它们的名字时,这就显得很有用。 # workon还可以任意停止你当前的环境,可以在多个虚拟环境中来回切换 workon django1.15 workon django2.0 # 也可以手动停止虚拟环境 deactivate # 删除虚拟环境,需要先退出虚拟环境 rmvirtualenv my_django115
四,常用其他命令
# 列举所有的环境。 lsvirtualenv # 导航到当前激活的虚拟环境的目录中,比如说这样您就能够浏览它的 site-packages 。 cdvirtualenv # 和上面的类似,但是是直接进入到 site-packages 目录中。 cdsitepackages # 显示 site-packages 目录中的内容。 lssitepackages