Linux编译安装Python3、虚拟环境及工具管理

安装Python3

下载python3源码

1.cd  /opt

2.wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz

3.安装python3前的库环境  不然后边安装库各种坑

1 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
1 注意:有时候会报错yum进程被锁,注意yum只能只有一个进程在安装
2 
3 ps -ef|grep yum
4 
5 在kill杀掉就是了

4.解压缩

1 tar -xvf Python-3.7.0.tgz 

5.编译且安装

    1.释放编译文件makefile,就是用来编译安装的

1 ./configure --prefix=/opt/python37/

  --prefix指定软件的安装路径  

  2.执行make命令编译       等的久慢慢等待

  3.编译且安装执行make install    生成python37文件

  4.配置python3.7的环境变量

      1.配置软连接  ln -s 目标文件 软连接文件

1 ln -s /opt/python37/bin/python3.7 /usr/bin/python3     
1 ln -s /opt/python37/bin/pip3 /usr/bin/pip3

      2.配置path环境变量(这个好点因为要用到pip3安装呢后边)

      查看环境变量值:echo $PATH           

1 /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
1 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/python37/bin
2 
3 # 在/etc/profile最后一行添加
4 # export PATH=$PATH:/opt/python37/bin
5 # 然后source /etc/profile

 安装虚拟环境

 1.安装virtualenv

1 pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple virtualenv

2.创建虚拟环境目录

1 mkdir myenv
2 
3 cd myenv/

3.创建独立运行环境

1 virtualenv --no-site-packages --python=python3  venv#得到独立第三方包的环境,并且指定解释器是python3

4.然后读一下activate--->激活    

5.deactivate--->退出

6.其实可以自己先测试下  开两个项目跑一下 我直接退出了

对比下环境变量的改变:

 确保环境一致性

 1 解决方案:
 2 1.通过命令保证环境的一致性,导出当前python环境的包
 3 pip3 freeze > requirements.txt   
 4 
 5 这将会创建一个 requirements.txt 文件,其中包含了当前环境中所有包及 各自的版本的简单列表。
 6 可以使用 “pip list”在不产生requirements文件的情况下, 查看已安装包的列表。
 7 
 8 
 9 2.上传至服务器后,在服务器下创建virtualenv,在venv中导入项目所需的模块依赖
10 pip3 install -r requirements.txt

 安装虚拟环境管理工具virtualenvwrapper

1 # 安装这个命令 必须在物理解释器底下。
2 [root@localhost myenv]# pip3 install virtualenvwrapper 
1 pip3 install -i http://pypi.douban.com/simple virtualenvwrapper --trusted-host pypi.douban.com

设置linux环境变量,每次开机自动加载这个工具

export读取shell变量的作用

 1 编辑 ~/.bashrc文件
 2 打开文件
 3 vim ~/.bashrc
 4 写入以下两行代码
 5 export WORKON_HOME=~/Envs   #设置virtualenv的统一管理目录
 6 export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages'   #添加virtualenvwrapper的参数,生成干净隔绝的环境
 7 export VIRTUALENVWRAPPER_PYTHON=/opt/python37/bin/python3     #指定python解释器
 8 source /opt/python37/bin/virtualenvwrapper.sh #执行virtualenvwrapper安装脚本
 9 读取文件,使得生效,此时已经可以使用virtalenvwrapper
10 source ~/.bashrc

配置完就可以看到家目录Envs

创建虚拟环境

1 mkvirtualenv prodenv

查看虚拟环境有哪些

1 workon

直接激活环境

1 workon prodenv

 其它命令

 1 rmvirtualenv prodenv
 2 删除虚拟环境
 3 
 4 lsvirtualenv
 5 列举所有的环境。
 6 
 7 cdvirtualenv
 8 导航到当前激活的虚拟环境的目录中,比如说这样您就能够浏览它的 site-packages 。
 9 
10 cdsitepackages
11 和上面的类似,但是是直接进入到 site-packages 目录中。
12 
13 lssitepackages
14 显示 site-packages 目录中的内容。
15 
16 完整官网介绍:https://virtualenvwrapper.readthedocs.io/en/latest/command_ref.html

 之后我发现一个问题再次创建虚拟环境的时候就报错了,报错信息

解决:我这是centos7的解决方式

更新pip: 这是pip多版本造成的

1 python3 -m pip install -U pip

为了确保万一我又从新试了下:搞定

在ubuntu上操作可能报一些依赖错关于什么ctypes找不到

解决方案

1 sudo apt-get update
2 sudo apt-get upgrade
3 sudo apt-get dist-upgrade
4 sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus
5 sudo apt-get install build-essential libncursesw5-dev libgdbm-dev libc6-dev
6 sudo apt-get install zlib1g-dev libsqlite3-dev tk-dev
7 sudo apt-get install libssl-dev openssl
8 sudo apt-get install libffi-dev

可以看python

ls -l /usr/bin | grep python

 

原文地址:https://www.cnblogs.com/Alexephor/p/11364764.html